BMKG Monitor

Monitoring earthquake, weather, and tsunami data in Indonesia using BMKG official data. Use when the user asks about earthquakes, weather forecasts, weather...

MIT-0 · Free to use, modify, and redistribute. No attribution required.
1 · 1.9k · 4 current installs · 4 all-time installs
byAffif Mukhlashin@bluemeda
MIT-0
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The skill name/description match its behavior: the included Python script fetches JSON/XML from BMKG domains and formats outputs for earthquakes, shakemaps, tsunamis, weather, and warnings. Minor mismatch: the registry metadata lists no required binaries, but SKILL.md and the script expect python3 and the 'requests' library to be available.
Instruction Scope
SKILL.md explicitly instructs running scripts/get_data.py with specific commands; the script only fetches data from BMKG domains (data.bmkg.go.id, api.bmkg.go.id, bmkg.go.id, static.bmkg.go.id), parses JSON/XML, and prints results. It does not access local sensitive files, other environment variables, or external endpoints outside BMKG. Error handling prints to stderr and exits; no broad 'gather context' steps are present.
Install Mechanism
There is no install spec (instruction-only plus an included script). No remote downloads or archive extraction are performed by an installer. The only runtime dependency is the Python script itself and the third-party 'requests' package, which the skill does not automatically install.
Credentials
The skill declares no environment variables, credentials, or config paths and the code does not read any such values. All network requests are to BMKG official hosts; no tokens/secrets are requested or transmitted.
Persistence & Privilege
The skill does not request permanent presence (always is false) and does not modify other skills or system-wide configuration. It is user-invocable and permitted to be invoked autonomously by the agent (platform default), which is reasonable given its limited scope and lack of credentials.
Assessment
This skill is coherent with its description: it fetches public BMKG earthquake, weather, shakemap, and warnings data and prints formatted output. Things to consider before installing/running: (1) The package metadata doesn't declare that python3 and the 'requests' library are required — install them (or run in a Python virtualenv) before use. (2) The script makes outbound HTTP(S) calls to official BMKG hosts; ensure outbound network access is acceptable. (3) As with any third-party code, inspect the included scripts (scripts/get_data.py) yourself or run them in a sandboxed environment if you have security concerns. (4) Allowing autonomous invocation is low risk here because no secrets are exposed, but an autonomous agent could call the endpoints repeatedly — consider rate/usage implications.

Like a lobster shell, security has layers — review code before you run it.

Current versionv1.1.0
Download zip
latestvk97d6ycjhcyatknwnefe67zer9833g51

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

SKILL.md

BMKG Monitor

Monitor and analyze seismic activity, weather, and natural hazard warnings in Indonesia using real-time data from BMKG (Badan Meteorologi, Klimatologi, dan Geofisika).

Quick Start

# Earthquake
python3 scripts/get_data.py latest              # Latest significant earthquake
python3 scripts/get_data.py felt                 # Earthquakes felt by people
python3 scripts/get_data.py recent               # Recent M5.0+ earthquakes
python3 scripts/get_data.py detail <EVENT_ID>    # Moment tensor & phase data
python3 scripts/get_data.py shakemap             # Shakemap image URL
python3 scripts/get_data.py tsunami              # Filter for tsunami potential

# Weather
python3 scripts/get_data.py weather <ADM4_CODE>  # 3-day forecast for location
python3 scripts/get_data.py warnings             # Active severe weather warnings

# Options
python3 scripts/get_data.py felt --json          # Raw JSON output (any command)
python3 scripts/get_data.py help                 # List all commands

ADM4 Codes (Weather)

Weather forecasts use kelurahan/desa administrative codes (format: XX.XX.XX.XXXX). Examples:

  • 31.71.03.1001 — Kemayoran, Jakarta Pusat
  • 35.07.01.1001 — Surabaya area
  • Find codes via Kepmendagri No. 100.1.1-6117/2022.

Workflows

1. "Was there a quake?"

Run felt first — includes smaller, shallow quakes that people actually feel. If they want the big one, run latest.

2. Significant Earthquake Analysis

When a major quake occurs:

  1. Run latest to get details.
  2. Run shakemap to get the MMI shakemap image URL.
  3. Use references/seismology.md to explain magnitude, depth classification, MMI intensity, and fault type.
  4. Run tsunami to check if any events have tsunami potential.

3. Weather Check

For weather questions, use weather <adm4_code>. Shows next 3 forecast periods with temperature, humidity, condition, wind, and visibility.

4. Active Weather Warnings

Run warnings to see current nowcast alerts — severe rain, thunderstorms, strong winds across Indonesian provinces. Refer to the "Weather Warning Severity" section in references/seismology.md for urgency/severity/certainty meanings.

5. Moment Tensor / Beach Ball Analysis

If a detailed BMKG report includes a moment tensor diagram, refer to the "Moment Tensor" section in references/seismology.md to identify Strike-Slip, Normal, or Thrust faulting.

Data Sources

DataSourceFormat
Earthquake (latest, recent, felt)data.bmkg.go.id/DataMKG/TEWS/JSON
Shakemap imagesdata.bmkg.go.id/DataMKG/TEWS/<id>.mmi.jpgJPG
Weather forecastapi.bmkg.go.id/publik/prakiraan-cuacaJSON
Weather warningsbmkg.go.id/alerts/nowcast/idRSS/XML
Moment tensor & phasestatic.bmkg.go.id/TXT

References

  • seismology.md — Magnitude, MMI scale, depth, tsunami warnings, fault types, Indonesia tectonics, weather severity levels.

Files

4 total
Select a file
Select a file to preview.

Comments

Loading comments…