ClawEvents 🎉
Multi-city event discovery — Tel Aviv, Barcelona, New York.
Triggers
- "What's on in Tel Aviv this weekend?"
- "Find jazz concerts in Barcelona next week"
- "Cinema in Tel Aviv tonight"
- "Free family events in NYC this Saturday"
- "Events in Tel Aviv and Barcelona for the group trip"
- "Lev Cinema schedule this week"
- "Live music in New York, adults only, evening"
CLI Usage
# Basic search
python3 -m clawevents search --city tel-aviv --days 7
# Jazz in Tel Aviv this week
python3 -m clawevents search --city tel-aviv --type jazz --days 7
# Cinema tonight (Lev + others)
python3 -m clawevents search --city tel-aviv --type cinema --days 1
# Multi-city: what's on in Barcelona and NYC this weekend
python3 -m clawevents search --city barcelona new-york --days 3
# Family events, free, afternoon
python3 -m clawevents search --city tel-aviv --type family --age family --time afternoon --free
# Concert, adults, evening, specific dates
python3 -m clawevents search --city tel-aviv barcelona --type concert --age adults --time evening --from 2026-06-21 --to 2026-06-27
# JSON output (for programmatic use)
python3 -m clawevents search --city new-york --type jazz --format json --limit 10
Supported Cities
| City | Alias | Sources |
|------|-------|---------|
| Tel Aviv | tel-aviv, tlv | TLV Municipality API, Eventbrite, Lev Cinema |
| Barcelona | barcelona, bcn | Ticketmaster, Eventbrite |
| New York | new-york, nyc | Ticketmaster, Eventbrite, NYC Open Data |
Event Types
jazz · concert / music · cinema / movie · theatre · nightlife · family / kids · comedy · art · sport · festival · community
Filters
| Flag | Values | Default |
|------|--------|---------|
| --type | jazz, concert, cinema, theatre, ... | all |
| --age | kids, family, adults | all |
| --time | morning, afternoon, evening, late-night | all |
| --from / --to | YYYY-MM-DD | today / +7d |
| --days | integer | 7 |
| --free | flag | false |
| --limit | integer | 20 |
| --format | text, json | text |
Setup
Install dependencies
cd skills/clawevents
pip3 install -r requirements.txt
API Keys (optional but recommended)
| Key | Source | Cities unlocked |
|-----|--------|-----------------|
| TICKETMASTER_API_KEY | developer.ticketmaster.com — free | Barcelona, NYC |
| EVENTBRITE_TOKEN | eventbrite.com/platform/api — free | All 3 |
| TLV_API_KEY | apiportal.tel-aviv.gov.il — free | Tel Aviv (official events) |
Without API keys: Tel Aviv scrapes TLV website; Barcelona/NYC use Eventbrite free tier only + NYC Open Data.
Add to ~/.zshrc or ~/.bashrc:
export TICKETMASTER_API_KEY="your_key"
export EVENTBRITE_TOKEN="your_token"
export TLV_API_KEY="your_key" # optional
Data Sources
Tel Aviv
- TLV Municipality API — Official city events (DigiTel source). Free with API key.
- Eventbrite — Tech, community, cultural events
- Lev Cinema — Boutique cinema (Dizengoff). Web scrape.
- (planned) Time Out Israel scraper — jazz, clubs, theatre picks
Barcelona
- Ticketmaster Discovery API — Concerts, theatre, sports, 230K+ events
- Eventbrite — Community + cultural events
- (planned) Fever/Xceed scraper — nightlife, club events, immersive experiences
New York
- Ticketmaster Discovery API — Concerts, Broadway, sports
- Eventbrite — Community events
- NYC Open Data — Free parks events, city programmes
Architecture
ClawEventsEngine
├── Fetchers (parallel, per-city)
│ ├── TLVMunicipalityFetcher → Tel Aviv
│ ├── TicketmasterFetcher → Barcelona, NYC
│ ├── EventbriteFetcher → All cities
│ ├── LevCinemaFetcher → Tel Aviv (cinema)
│ └── NYCOpenDataFetcher → NYC (free events)
├── Filter layer (types, age, time-of-day, date, free)
├── Dedup layer (same title + time across sources)
└── Rank layer (chronological, no-time events last)
Extending
To add a new city or source:
- Create
clawevents/fetchers/your_source.pyimplementingBaseFetcher - Register in
_FETCHER_REGISTRYand_CITY_FETCHERSinengine.py - Add city alias in
cli.py
Scan to join WeChat group