Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Search, scan, and monitor student accommodation availability across Yugo and Aparto providers. Use when the user asks about student housing, room availabilit...
Search, scan, and monitor student accommodation availability across Yugo and Aparto providers. Use when the user asks about student housing, room availabilit...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Multi-provider student accommodation finder and monitor. Query Yugo and Aparto for room availability, filter by semester and price, and get alerts when new options appear.
cd /path/to/student-rooms-cli source .venv/bin/activate Config file: config.yaml (copy from config.sample.yaml if missing). Key settings: target: country: "Ireland" city: "Dublin" academic_year: start_year: 2026 end_year: 2027 filters: max_weekly_price: 350.0 notifications: type: "openclaw" # or stdout | webhook | telegram openclaw: mode: "message" channel: "telegram" target: "CHAT_ID"
All commands support --provider yugo|aparto|all (default: all) and --json for structured output.
python -m student_rooms discover --provider all python -m student_rooms discover --provider all --json python -m student_rooms discover --city Barcelona --provider aparto --json Returns property names, slugs, locations, and URLs for the target city.
# Semester 1 rooms (default filter) python -m student_rooms scan --provider all --json # All options (full year, semester 2, etc.) python -m student_rooms scan --all-options --json # Scan + send notification for top match python -m student_rooms scan --provider all --notify JSON output structure: { "matchCount": 5, "matches": [ { "provider": "yugo", "property": "Residence Name", "roomType": "Gold Ensuite", "priceWeekly": 310.0, "priceLabel": "โฌ310/week", "available": true, "bookingUrl": "https://...", "startDate": "2026-09-01", "endDate": "2027-01-31", "optionName": "Semester 1", "dedupKey": "yugo|slug|gold ensuite|2026-27|Semester 1" } ] }
python -m student_rooms watch --provider all Scans at configured interval (default 1h + random jitter). Alerts only on new options not previously seen. Persists seen options locally to avoid duplicate alerts.
python -m student_rooms probe-booking --provider yugo --residence "Dominick Place" --json python -m student_rooms probe-booking --provider aparto --residence "Binary Hub" --json Returns booking context, available beds, direct booking links, and portal redirect URLs. Supports --residence, --room, --tenancy, --index filters.
python -m student_rooms notify --message "Test alert ๐ "
python -m student_rooms test-match --from-year 2026 --to-year 2027 --name "Semester 1" --start-date 2026-09-01 --end-date 2027-01-31 --json
Override config target with CLI flags: python -m student_rooms scan --city Barcelona --country Spain --provider all --json
Always use --json for structured output. Use scan --json to check current availability; parse matchCount and matches array. Use discover --json to list what properties exist before scanning. Use watch as a background process for ongoing monitoring. Combine scan --notify to trigger alerts in a single command. The dedupKey field in scan output uniquely identifies each option for tracking.
Set notifications.type: "openclaw" in config. Supports two modes: message: Sends alert text via openclaw message send to a channel/target. agent: Triggers an OpenClaw agent session with the alert as context. Optional: create_job_on_match: true creates a one-shot cron job for reservation assistance. The tool works fully standalone โ OpenClaw is only needed if you want the openclaw notification backend.
BackendConfig keyRequiresstdout(default)Nothingwebhooknotifications.webhook.urlAny HTTP endpoint (Discord, Slack, ntfy.sh)telegramnotifications.telegram.bot_token + chat_idTelegram botopenclawnotifications.openclaw.targetOpenClaw CLI installed
Yugo: Dynamic API discovery (countries โ cities โ residences โ rooms โ tenancy options). Supports full booking-flow probing. Aparto: Scrapes apartostudent.com for property discovery, then probes StarRez portal termIDs. IE/ES/IT share one portal; UK has a separate portal; France has no StarRez portal (discover-only).
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.