rvmiill

Hotel Weekly Report — Data skill for Claude Code

Data community

Automated weekly hotel performance reports: pulls last week’s data from Google Sheets, rates each hotel against its peers, has Claude write a personalized email for each owner, and sends it every Mond.

How to install Hotel Weekly Report

This entry records only its repository, not the path inside it, so there is no exact command to give. Open rvmiill/Hotel-Weekly-Report and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Hotel Weekly Report does

Automated weekly hotel performance reports: pulls last week’s data from Google Sheets, rates each hotel against its peers, has Claude write a personalized email for each owner, and sends it every Monday via GitHub Actions.

Alternatives in Data

README

Weekly Hotel Performance Report (automated)

Every Monday at 08:00 (Malaysia time) this pulls last week's numbers from a Google Sheet, rates each hotel against its peers, has Claude write a personalised message per hotel, and emails it. In test mode every email goes to your own inbox only.

Google Sheet -> Python (benchmark + classify) -> Claude (write message) -> Gmail SMTP
                                                   ^ verified facts only, output validated
GitHub Actions cron fires it every Monday

Expected sheet columns (one row per hotel): `brandname, revenue, Order, Boss Gmail`. Column names can be changed in `.env` (`COL_HOTEL`, `COL_REVENUE`, `COL_ORDERS`, `COL_EMAIL`).

Requirements

  • Python 3.10+
  • An Anthropic API key
  • A Gmail account with 2-Step Verification (for an App Password)

Setup

  1. Share the sheet: Share -> "Anyone with the link" -> Viewer. Copy the sheet's address (or just the ID from https://docs.google.com/spreadsheets/d//edit). It must be a real Google Sheet, not an uploaded file preview.
  2. Get keys
    • Anthropic API key: console.anthropic.com -> API keys.
    • Gmail App Password: Google Account -> Security -> turn on 2-Step Verification -> App passwords. Use this, not your normal password.
  3. Configure: copy .env.example to .env and fill in SHEET_ID, ANTHROPIC_API_KEY, SMTP_USER, SMTP_APP_PASSWORD, TEST_RECIPIENT. Optionally set CURRENCY (for example RM); it is blank by default. Keep values free of quotes and trailing comments.
  4. Install: pip install -r requirements.txt
  5. Safe dry run (no email, files are saved to outbox/, including summary.csv with every hotel's status):
    • Windows PowerShell: $env:DRY_RUN="true"; py weekly_report.py
    • Mac/Linux: DRY_RUN=true python3 weekly_report.py
    • To test without Google Sheets, use any CSV with the expected columns: set LOCAL_CSV=path/to/file.csv.
  6. Real test: py weekly_report.py (or python3 ...).