Analyze live weather station integrations, validate data sources, and identify spots missing live conditions
Scanned 2/12/2026
Install to Claude Code
npx -y skills add majiayu000/claude-skill-registry --skill check-live-stations --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Check Live Stations?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/majiayu000-check-live-stations)More formats (shields.io, HTML) on the badges page.
---
name: check-live-stations
description: Analyze live weather station integrations, validate data sources, and identify spots missing live conditions
---
# Check Live Stations Skill
Analyze live weather data sources in FetchCurrentConditions strategies and cross-reference with spots.json to identify coverage and issues.
## Instructions
Perform the following analysis and report all findings.
### 1. Discover All Strategies
Scan `src/main/java/com/github/pwittchen/varun/service/live/strategy/` for all `FetchCurrentConditionsStrategy*.java` files.
For each strategy, extract:
- Class name
- Windguru ID(s) it handles (from `canProcess()` method or ID constants/maps)
- Data source URL(s)
- Data format (JSON, plain text, HTML scraping)
- Provider name (from class comments or URL domain)
### 2. Load Spots Data
Read `src/main/resources/spots.json` and extract:
- Spot name
- Country
- Windguru ID (from `windguruUrl`, extract numeric ID)
- Fallback Windguru ID if present (from `windguruFallbackUrl`)
### 3. Cross-Reference Coverage
For each spot in spots.json:
1. Determine if any strategy can process its Windguru ID
2. Mark spots as "has live data" or "no live data"
### 4. Test Live Data Sources
For each unique data source URL found in strategies:
1. Attempt to fetch the URL using curl (with 10s timeout)
2. Check HTTP response code
3. Verify response contains expected data markers (non-empty, valid format)
### 5. Analyze Strategy Patterns
For each strategy, document:
- Parsing method (regex, JSON, HTML table extraction)
- Fields extracted (wind speed, gusts, direction, temperature, timestamp)
- Unit conversions performed (m/s to knots, etc.)
- Error handling approach
## Output Format
Generate a report in this format:
```
## Live Weather Stations Analysis Report
### Summary
- Total strategies: X
- Total spots: Y
- Spots with live data: Z (W%)
- Spots without live data: N
### Strategy Inventory
| Strategy Class | Provider | WG IDs | Data URL | Format |
|----------------|----------|--------|----------|--------|
| ... | ... | ... | ... | ... |
### Coverage by Country
| Country | Total Spots | With Live Data | Without Live Data |
|---------|-------------|----------------|-------------------|
| Poland | X | Y | Z |
| ... | ... | ... | ... |
### Spots WITH Live Data Integration
| Spot Name | Country | WG ID | Strategy | Data Source |
|-----------|---------|-------|----------|-------------|
| ... | ... | ... | ... | ... |
### Spots WITHOUT Live Data Integration
These spots only have forecast data and could benefit from live weather station integration:
| Spot Name | Country | WG ID | Potential Sources |
|-----------|---------|-------|-------------------|
| ... | ... | ... | (suggest if known) |
### Data Source Health Check
| URL | Status | Response Time | Notes |
|-----|--------|---------------|-------|
| ... | OK/FAIL| Xms | ... |
### Issues Found
#### Critical (data sources unreachable)
- [Strategy] URL not responding: url
#### Warnings (potential improvements)
- [Spot] Could add live data from nearby station
- [Strategy] Missing gust data extraction
### Recommendations
1. Priority spots for live data integration (high-traffic locations)
2. Nearby stations that could be leveraged
3. Strategy improvements or consolidation opportunities
```
## Execution Steps
1. Use `Glob` to find all strategy files in the strategy directory
2. Use `Read` to analyze each strategy file
3. Use `Read` to load spots.json
4. Use `Bash` with `curl` to test each data source URL
5. Cross-reference and generate the report
6. Provide actionable recommendations
## Notes
- Windguru IDs are extracted from URLs like `https://www.windguru.cz/500760` -> `500760`
- Some spots use `windguruFallbackUrl` when `windguruUrl` is empty (generated IDs)
- Strategies may handle multiple spots (e.g., WiatrKadynyStations handles 4 spots)
- Data sources may be temporarily offline; distinguish between transient and permanent failures
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!