openclaw 网盘下载
OpenClaw

技能详情(站内镜像,无评论)

首页 > 技能库 > Marine Forecast

Marine and sailing weather via Open-Meteo. Waves, swell, sea temperature, wind, tides, ocean currents, and sailing assessments. Free, no API key, global cove...

开发与 DevOps

作者:Alexis Santos @alexissan

许可证:MIT-0

MIT-0 ·免费使用、修改和重新分发。无需归因。

版本:v1.0.0

统计:⭐ 0 · 157 · 2 current installs · 2 all-time installs

0

安装量(当前) 2

🛡 VirusTotal :良性 · OpenClaw :良性

Package:alexissan/marine-forecast

安全扫描(ClawHub)

  • VirusTotal :良性
  • OpenClaw :良性

OpenClaw 评估

The skill's requests and instructions are consistent with a marine weather briefing: it only uses curl to call Open‑Meteo endpoints and does not ask for credentials, unusual binaries, or installs.

目的

Name/description (marine forecasts via Open‑Meteo) match the instructions: all example commands call api.open-meteo.com or marine-api.open-meteo.com and require only curl. There are no unrelated credentials or services requested.

说明范围

SKILL.md directives stay on task: fetch current/hourly/daily marine and weather data, combine results, format a sailing briefing, and compute simple assessments. It does not instruct the agent to read system files, access other credentials, or transmit data to unexpected endpoints.

安装机制

Instruction-only skill with no install spec and no code files. It requires curl (declared). No downloads, archives, or third-party package installs are present.

证书

No environment variables, secrets, or config paths are requested. The data sent are location (latitude/longitude) and timezone to the public Open‑Meteo APIs — reasonable and proportionate for the stated purpose.

持久

always is false; default autonomous invocation is allowed (platform default). The skill does not request persistent system presence or modify other skills or system settings.

综合结论

This skill appears coherent and limited in scope: it will make HTTPS requests to Open‑Meteo (marine-api.open-meteo.com and api.open-meteo.com) using curl and will send the coordinates/timezone you provide. It requests no credentials or local files. If you are concerned about privacy, avoid providing precise personal-location data or restrict the agent's network access; otherwise the skill is appropriate for marine weather briefings.

安装(复制给龙虾 AI)

将下方整段复制到龙虾中文库对话中,由龙虾按 SKILL.md 完成安装。

请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「Marine Forecast」。简介:Marine and sailing weather via Open-Meteo. Waves, swell, sea temperature, wind,…。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/alexissan/marine-forecast/SKILL.md
(来源:yingzhi8.cn 技能库)

SKILL.md

打开原始 SKILL.md(GitHub raw)

---
name: marine-forecast
description: "Marine and sailing weather via Open-Meteo. Waves, swell, sea temperature, wind, tides, ocean currents, and sailing assessments. Free, no API key, global coverage."
homepage: https://open-meteo.com/en/docs/marine-weather-api
metadata: {"clawdbot":{"emoji":"🌊","requires":{"bins":["curl"]}}}
---

# Marine Forecast

Marine and sailing weather using Open-Meteo Marine API + Weather API. Free, no API key required, works worldwide.

Two APIs are used together — replace `LAT`, `LON`, and `TZ` in all commands:
- **Marine API** (`marine-api.open-meteo.com`) — waves, swell, sea temp, currents, tides
- **Weather API** (`api.open-meteo.com`) — wind, gusts, air temp, pressure, visibility

Find coordinates for any location using web search or the user's input. Use the nearest timezone (IANA format, e.g. `Europe/London`, `America/New_York`, `Atlantic/Canary`).

## Current conditions

Sea state:
```bash
curl -s "https://marine-api.open-meteo.com/v1/marine?latitude=LAT&longitude=LON&current=wave_height,wave_direction,wave_period,swell_wave_height,swell_wave_direction,swell_wave_period,sea_surface_temperature&timezone=TZ"
```

Wind and atmosphere:
```bash
curl -s "https://api.open-meteo.com/v1/forecast?latitude=LAT&longitude=LON&current=temperature_2m,wind_speed_10m,wind_direction_10m,wind_gusts_10m,apparent_temperature,pressure_msl,cloud_cover,visibility&timezone=TZ"
```

Run both and combine the results into a single briefing.

## Hourly forecast

Marine (up to 16 days, adjust `forecast_days`):
```bash
curl -s "https://marine-api.open-meteo.com/v1/marine?latitude=LAT&longitude=LON&hourly=wave_height,wave_direction,wave_period,swell_wave_height,swell_wave_direction,swell_wave_period,swell_wave_peak_period,wind_wave_height,wind_wave_direction,sea_surface_temperature,ocean_current_velocity,ocean_current_direction,sea_level_height_msl&forecast_days=3&timezone=TZ"
```

Wind (up to 16 days):
```bash
curl -s "https://api.open-meteo.com/v1/forecast?latitude=LAT&longitude=LON&hourly=wind_speed_10m,wind_direction_10m,wind_gusts_10m,temperature_2m,pressure_msl,visibility,cloud_cover,precipitation_probability&forecast_days=3&timezone=TZ"
```

## Daily summary

Marine:
```bash
curl -s "https://marine-api.open-meteo.com/v1/marine?latitude=LAT&longitude=LON&daily=wave_height_max,wave_direction_dominant,wave_period_max,swell_wave_height_max,swell_wave_direction_dominant,swell_wave_period_max&forecast_days=7&timezone=TZ"
```

Weather:
```bash
curl -s "https://api.open-meteo.com/v1/forecast?latitude=LAT&longitude=LON&daily=wind_speed_10m_max,wind_gusts_10m_max,wind_direction_10m_dominant,temperature_2m_max,temperature_2m_min,sunrise,sunset,uv_index_max,precipitation_probability_max&forecast_days=7&timezone=TZ"
```

## Tides (sea level)

```bash
curl -s "https://marine-api.open-meteo.com/v1/marine?latitude=LAT&longitude=LON&hourly=sea_level_height_msl&forecast_days=3&timezone=TZ"
```

High/low tide: find local maxima and minima in the `sea_level_height_msl` array. Sea level includes tidal signal + inverted barometer effect.

## Ocean currents

```bash
curl -s "https://marine-api.open-meteo.com/v1/marine?latitude=LAT&longitude=LON&hourly=ocean_current_velocity,ocean_current_direction&forecast_days=3&timezone=TZ"
```

## Presenting results

Always present marine data as a structured sailing briefing:

### Current conditions format

```
Sea:    [wave_height]m waves, [wave_period]s period, from [direction]
Swell:  [swell_wave_height]m from [direction], [swell_wave_period]s period
Wind:   [wind_speed] km/h [direction], gusts [wind_gusts] km/h
Temp:   Air [temperature]C (feels [apparent_temperature]C), Sea [sea_surface_temperature]C
Sky:    [cloud_cover]% cloud, [visibility/1000]km visibility
```

### Sailing assessment

Rate conditions based on the data:
- **Calm** — waves < 0.5m, wind < 12 km/h (Beaufort 0-2)
- **Light** — waves 0.5-1m, wind 12-19 km/h (Beaufort 3)
- **Moderate** — waves 1-2m, wind 20-38 km/h (Beaufort 4-5)
- **Rough** — waves 2-3m, wind 39-49 km/h (Beaufort 6)
- **Very Rough** — waves 3-4m, wind 50-61 km/h (Beaufort 7)
- **Dangerous** — waves > 4m or wind > 62 km/h (Beaufort 8+)

Flag warnings:
- Small craft advisory: wind gusts > 50 km/h or wave height > 3m
- Gale warning: sustained wind > 62 km/h or wave height > 5m
- Suggest activity suitability: sailing, diving, fishing, swimming, surfing

### Beaufort scale

| Force | km/h | Description | Sea State |
|-------|------|-------------|-----------|
| 0 | 0-1 | Calm | Flat |
| 1 | 2-5 | Light air | Ripples |
| 2 | 6-11 | Light breeze | Small wavelets |
| 3 | 12-19 | Gentle breeze | Large wavelets |
| 4 | 20-28 | Moderate breeze | Small waves |
| 5 | 29-38 | Fresh breeze | Moderate waves |
| 6 | 39-49 | Strong breeze | Large waves |
| 7 | 50-61 | Near gale | Breaking waves |
| 8 | 62-74 | Gale | High waves |
| 9 | 75-88 | Severe gale | Very high waves |
| 10 | 89-102 | Storm | Exceptionally high waves |

### Wind direction conversion

Convert degrees to compass: divide by 22.5, round, index into `[N, NNE, NE, ENE, E, ESE, SE, SSE, S, SSW, SW, WSW, W, WNW, NW, NNW]`.

Quick reference: 0=N, 45=NE, 90=E, 135=SE, 180=S, 225=SW, 270=W, 315=NW.

## Units

| Measurement | Unit |
|-------------|------|
| Wave height | meters (m) |
| Wave period | seconds (s) |
| Wind speed | km/h |
| Temperature | Celsius (C) |
| Current velocity | km/h |
| Directions | degrees (0=N, 90=E, 180=S, 270=W) |
| Sea level | meters relative to MSL |
| Visibility | meters |
| Pressure | hPa |

Users may prefer knots for wind. Convert: `knots = km/h * 0.539957`. Add `&wind_speed_unit=kn` to the weather API URL to get knots directly.

## Popular sailing locations (reference)

| Region | Example | Lat | Lon |
|--------|---------|-----|-----|
| Canary Islands | Las Palmas | 28.1 | -15.4 |
| Balearics | Palma de Mallorca | 39.57 | 2.65 |
| Greek Islands | Piraeus | 37.94 | 23.65 |
| Croatia | Split | 43.51 | 16.44 |
| Caribbean | St. Maarten | 18.04 | -63.05 |
| South Pacific | Tahiti | -17.53 | -149.57 |
| Southeast Asia | Phuket | 7.88 | 98.39 |
| East Africa | Zanzibar | -6.16 | 39.19 |
| Australia | Sydney | -33.87 | 151.21 |
| US East Coast | Annapolis | 38.97 | -76.49 |
| UK | Solent | 50.77 | -1.30 |
| Scandinavia | Gothenburg | 57.71 | 11.97 |

## Data sources

- ECMWF WAM (European Centre for Medium-Range Weather Forecasts)
- NOAA GFS Wave (Global Forecast System)
- DWD GWAM/EWAM (German Weather Service)
- Resolution: 5-25 km depending on region and model
- Updates: multiple times per day
- Forecast range: up to 16 days (`forecast_days=16`)

## Notes

- All data is JSON. Parse with `jq` if available, otherwise read raw JSON.
- Hourly data returns large arrays. For quick checks, use `current` parameters. For planning, use `daily`. Use `hourly` only when the user needs detailed breakdowns.
- Combine marine + weather API calls to give a complete picture. Neither alone is sufficient for a full sailing briefing.
- Sea level data approximates tides but does not label high/low explicitly. Derive from local maxima/minima in the hourly array.
- For coastal areas, data accuracy depends on proximity to the nearest grid point. Open ocean coverage is excellent; harbors and bays may be less precise.

Docs: https://open-meteo.com/en/docs/marine-weather-api