Specialized tool for retrieving weather forecast data from the Euskalmet (Basque Meteorology Agency) API.
Execute both scripts from the skill root directory to fetch and format the weather forecast:
cd ~/.openclaw/skills/euskalmet
./venv/bin/python3 scripts/main.py && ./venv/bin/python3 scripts/format_forecast.py
Optional: Pass a username for a personalized greeting:
./venv/bin/python3 scripts/format_forecast.py --username "Urtzi"
# Output: "Egun on, Urtzi! ✨"
# Without username:
# Output: "Egun on! ✨"
You can also set EUSKALMET_GREETING_NAME in your .env file (not related to API credentials — used only for the greeting):
EUSKALMET_GREETING_NAME=Urtzi
Important: Always run both scripts in sequence. The first (main.py) downloads the raw JSON forecast data, and the second (format_forecast.py) formats it into a human-readable message in Basque.
The formatted output includes:
Example output:
Egun on, Urtzi! ✨
Gaur (2026-03-24) Laudion **Zaparrada txikiak** 🌧️ izango dugu, 11.5 °C maximoarekin eta 5.8 °C minimoarekin.
Hona hemen datozen egunetarako joera:
📅 **Bihar:** Euri txikia 🌧️ | ⬇️ 4.4 °C ⬆️ 9.1 °C
📅 **Etzi:** Zaparrada txikiak 🌧️ | ⬇️ 3.1 °C ⬆️ 10.9 °C
📅 **Etzidamu:** Euri txikia 🌧️ | ⬇️ 2.2 °C ⬆️ 11.5 °C
Egun bikaina izan! 🚀
scripts/)main.py — Downloads the raw JSON forecast from the Euskalmet API and saves it to forecasts/format_forecast.py — Reads the JSON and outputs a formatted Basque-language weather messagetest_env.py — Tests that your API credentials are validdownload_images.py — Downloads weather icons from Euskalmet APItest_structure.py — Verifies the skill file structure is correctforecasts/-euskalmet.json — Raw JSON data for each locationavailable-locations.json — List of available locations supported by the APIeuskalmet/
├── SKILL.md # This file
├── scripts/
│ ├── main.py # Main script (downloads forecast data)
│ ├── format_forecast.py # Formats forecast into human-readable message
│ ├── test_env.py # Test API credentials
│ ├── download_images.py # Download weather icons
│ └── test_structure.py # Verify skill file structure
├── requirements.txt # Python dependencies
├── .env # Environment variables (API credentials) [not in repo]
├── available-locations.json # List of available locations
├── venv/ # Python virtual environment (Python 3.12)
├── forecasts/ # Generated forecast JSON files
│ └── laudio-euskalmet.json # Example: Laudio/Llodio forecast
├── images/ # Weather icons (legacy PNG)
└── images-modern/ # Weather icons (modern SVG)
Create (or recreate) the virtual environment with Python 3.12:
cd ~/.openclaw/skills/euskalmet
rm -rf venv
python3.12 -m venv venv
./venv/bin/pip install -r requirements.txt
Note: The venv must use Python 3.12+ for compatibility with the latest dependencies.
Configure your .env file with your Euskalmet API credentials:
EUSKALMET_API_EMAIL=your_email@example.com
EUSKALMET_API_PRIVATE_KEY=your_private_key
Optional: Add a name for a personalized greeting (not related to API credentials):
EUSKALMET_GREETING_NAME=YourName
If not set, the greeting will be "Egun on!" instead of "Egun on, YourName!"
To obtain API credentials, register at: https://www.euskalmet.euskadi.eus/
Test that your API credentials are correct:
cd ~/.openclaw/skills/euskalmet
./venv/bin/python3 scripts/test_env.py
Verify the skill file structure:
cd ~/.openclaw/skills/euskalmet
./venv/bin/python3 scripts/test_structure.py
./venv/bin/python3 scripts/main.py
./venv/bin/python3 scripts/main.py --download
./venv/bin/python3 scripts/main.py --locations
./venv/bin/python3 scripts/download_images.py
The skill extracts:
| Basque Keyword | Emoji |
|---|---|
| --------------- | ------- |
| oskarbi, eguzki | ☀️ |
| hodei gutxi, hodeitsu, tarteka | 🌤️ |
| hodei, estalia, laino | ☁️ |
| euri, zaparrada, zirimiria | 🌧️ |
| elur | ❄️ |
| ekaitz | ⛈️ |
| (default) | 🌡️ |
共 1 个版本