一键导入
cache
Use when checking if a listing URL is already cached, adding new listings to the cache, or updating the notified flag after Telegram operations
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when checking if a listing URL is already cached, adding new listings to the cache, or updating the notified flag after Telegram operations
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use when scraping Madlan rental listings for a specific city and room count — calls Madlan's internal GraphQL API directly via a Node.js script (no browser, no CAPTCHA).
Use when sending new rental listings to Telegram — sends each listing as a separate formatted message via the Telegram Bot API
Use when scraping Facebook group rental listings using Chrome DevTools MCP tools — requires user to be logged into Facebook in their local Chrome browser
Use when orchestrating a full apartment search run — reads config, fans out parallel scraper agents per platform, collects results, deduplicates against cache, and sends Telegram notifications for new listings
Use when scraping WinWin rental listings for a specific city and room count — uses web_search to find listings then web_fetch on each individual listing page to extract full details
Use when scraping Yad2 rental listings for a specific city and room count — uses web_search to find the listing page then web_fetch on each individual listing to extract full details
| name | cache |
| description | Use when checking if a listing URL is already cached, adding new listings to the cache, or updating the notified flag after Telegram operations |
Manages the local JSON cache at ~/.claude/plugins/find-apartments/data/cache.json. The cache is the single source of truth for deduplication — a listing is "new" if its URL is not a key in this file.
{
"https://www.yad2.co.il/item/abc123": {
"first_seen": "2026-04-10",
"city": "הוד השרון",
"price": 9000,
"rooms": 5,
"address": "יונה וולך 4",
"source": "Yad2",
"notified": true
}
}
Read ~/.claude/plugins/find-apartments/data/cache.json using the Read tool. If the file doesn't exist, all listings are new. Check if the listing URL exists as a key in the JSON object.
After scraping, for each new listing (URL not in cache), add an entry:
# Read existing cache (or start with empty object)
# Add new entries with notified: false
# Write back with the Write tool
Use the Read tool to read the current cache, then use the Write tool to write the updated cache. Always set first_seen to today's date (ISO format) and notified to false for new entries.
After successful Telegram send, update notified to true for the notified URLs.
Read the cache, update the flags, write it back.
Read the cache and filter for entries where notified is false — these need to be retried for Telegram notifications.
Ensure ~/.claude/plugins/find-apartments/data/ exists before reading/writing:
mkdir -p ~/.claude/plugins/find-apartments/data
If cache.json does not exist, treat it as an empty object {}.