Earthquake Monitor
Real-time earthquake monitoring for China, Taiwan, and Japan. CENC/CWA/JMA WebSocket data with proactive alert support.
MIT-0 · Free to use, modify, and redistribute. No attribution required.
⭐ 1 · 190 · 0 current installs · 0 all-time installs
byfungj@fungjcode
MIT-0
Security Scan
OpenClaw
Suspicious
medium confidencePurpose & Capability
The skill claims 'CENC/CWA/JMA WebSocket data' and 'Data from official government agencies' in SKILL.md, but the implementation fetches JSON from a third-party host (https://api.wolfx.jp/...) using curl. The code also depends on an npm 'ws' package even though no WebSocket logic is used in the provided files. Relying on a third-party aggregator instead of direct official endpoints is a notable mismatch and a trust surface to review.
Instruction Scope
SKILL.md describes getAll/init/start/stop usage and does not promise persistent storage, but the code writes and reads a local config.json (saveConfig/loadConfig) to store location/notification state and last IDs. The runtime uses child_process exec to call curl to fetch remote JSON; the curl commands are static constants (no user input interpolation), so they are not obviously vulnerable to shell injection, but using shell curl from Node is an implementation choice to review.
Install Mechanism
There is no install spec. The package.json declares a dependency ('ws') and node >=18 is required by skill.json and SKILL.md; the platform must ensure Node deps are available. This mismatch (no install instructions but code with dependencies) could cause runtime failures if dependencies are not installed by the host. No downloads from arbitrary URLs or extract steps are present.
Credentials
The skill does not request environment variables, secrets, or unrelated credentials. It only requires the 'curl' binary and Node runtime, which aligns with its use of curl via exec and Node code.
Persistence & Privilege
The skill persists configuration to a local file (config.json) in the skill directory and maintains timers for proactive monitoring. 'always' is false. Autonomous invocation is allowed (default). This persistence is expected for a monitoring skill, but combined with background polling of an external host it increases the importance of trusting that external endpoint.
What to consider before installing
Before installing, consider the following: (1) The code fetches earthquake JSON from api.wolfx.jp rather than directly from CENC/CWA/JMA — verify that api.wolfx.jp is trustworthy and acceptable for your use. (2) The skill executes curl via child_process (static commands) to pull data; ensure your environment allows outbound network calls and that you are comfortable with that third-party host receiving request metadata. (3) The skill writes config.json to disk (stores your chosen location and last-seen IDs) — if that is sensitive in your environment, do not install or review/modify how config is stored. (4) There is no install spec; confirm the host will install Node dependencies (package.json lists 'ws') or remove unused deps. (5) If you need true WebSocket/live feeds from official agencies (not a proxy), request or modify the skill to use the agencies' official endpoints rather than the aggregator. If unsure, treat this skill as a non-malicious but untrusted aggregator and review/replace remote URLs before enabling autonomous/background monitoring.Like a lobster shell, security has layers — review code before you run it.
Current versionv1.0.0
Download ziplatest
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
Runtime requirements
🌋 Clawdis
Binscurl
SKILL.md
Earthquake Monitor
Real-time earthquake monitoring for China, Taiwan, and Japan.
Data Sources
| Source | Region | Description |
|---|---|---|
| CENC | 🇨🇳 China | China Earthquake Networks Center |
| CWA | 🇹🇼 Taiwan | Central Weather Administration |
| JMA | 🇯🇵 Japan | Japan Meteorological Agency |
Get Earthquakes
// Get all earthquakes
getAll()
// Get by source
getCENC()
getJMA()
getCWA()
Initialize & Start Monitoring
// First time setup
init({ location: "大理" })
// Start proactive monitoring
start({ interval: 60000 })
// Stop monitoring
stop()
Options
| Option | Default | Description |
|---|---|---|
| location | 大理 | Monitoring city |
| distanceThreshold | 300 | Alert distance (km) |
| minMagnitude | 3.0 | Minimum magnitude |
| interval | 60000 | Check interval (ms) |
Supported Cities
大理、昆明、北京、上海、广州、深圳、成都、重庆、杭州、西安、南京、武汉、台北、东京、首尔等 40+ cities.
Notes
- Data from official government agencies (CENC/CWA/JMA)
- No API key required
- WebSocket + HTTP fallback
Author
- Author: fungjcode
- GitHub: https://github.com/fungjcode
Files
10 totalSelect a file
Select a file to preview.
Comments
Loading comments…
