# Orthogonal Weather

> Get current weather and forecasts using free APIs (no API key required). Use when asked about weather, temperature, forecasts, or climate conditions for any location.

- Skill: `majiayu000/orthogonal-weather` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/orthogonal-weather`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/orthogonal-weather/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/orthogonal-weather

---



# Weather

## Setup

Read your credentials from ~/.gooseworks/credentials.json:
```bash
export GOOSEWORKS_API_KEY=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json'))['api_key'])")
export GOOSEWORKS_API_BASE=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json')).get('api_base','https://api.gooseworks.ai'))")
```

If ~/.gooseworks/credentials.json does not exist, tell the user to run: `npx gooseworks login`

All endpoints use Bearer auth: `-H "Authorization: Bearer $GOOSEWORKS_API_KEY"`


Get weather data using free services - no API keys needed.

## wttr.in (Primary)

Fast, simple, works everywhere.

**Quick check:**
```bash
curl -s "wttr.in/London?format=3"
# Output: London: ⛅️ +8°C
```

**Compact format:**
```bash
curl -s "wttr.in/London?format=%l:+%c+%t+%h+%w"
# Output: London: ⛅️ +8°C 71% ↙5km/h
```

**Full forecast:**
```bash
curl -s "wttr.in/London?T"
```

### Format Codes
| Code | Meaning |
|------|---------|
| `%c` | Weather condition emoji |
| `%t` | Temperature |
| `%h` | Humidity |
| `%w` | Wind |
| `%l` | Location |
| `%m` | Moon phase |

### Tips
- URL-encode spaces: `wttr.in/New+York` or `wttr.in/San%20Francisco`
- Airport codes work: `wttr.in/JFK`, `wttr.in/SFO`
- Units: `?m` metric, `?u` USCS (Fahrenheit)
- Limit days: `?1` today only, `?0` current only
- Save as image: `curl -s "wttr.in/Berlin.png" -o weather.png`

## Open-Meteo (JSON API)

Better for programmatic use. Free, no key.

```bash
curl -s "https://api.open-meteo.com/v1/forecast?latitude=37.77&longitude=-122.42&current_weather=true"
```

Response includes: temperature, windspeed, weathercode, time.

### Get coordinates first
```bash
curl -s "https://geocoding-api.open-meteo.com/v1/search?name=San+Francisco&count=1"
```

## Examples

**San Francisco right now:**
```bash
curl -s "wttr.in/San+Francisco?format=3"
```

**Tokyo 3-day forecast:**
```bash
curl -s "wttr.in/Tokyo?3T"
```

**JSON weather for coordinates:**
```bash
curl -s "https://api.open-meteo.com/v1/forecast?latitude=35.68&longitude=139.69&current_weather=true&hourly=temperature_2m"
```

