Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add OpenLAIR/OpenSkill --skill evo-geospatial-earthquake-distancegit clone --depth 1 https://github.com/OpenLAIR/OpenSkillWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/openlair/openskill/evo-geospatial-earthquake-distance)<a href="https://agentmods.dev/skills/openlair/openskill/evo-geospatial-earthquake-distance"><img src="https://agentmods.dev/badge/skills/openlair/openskill/evo-geospatial-earthquake-distance/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/openlair/openskill/evo-geospatial-earthquake-distance"><img src="https://agentmods.dev/badge/skills/openlair/openskill/evo-geospatial-earthquake-distance.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00048 | $0.00643 |
| Opus 5 | $0.00024 | $0.00321 |
| Sonnet 5 | $0.00010 | $0.00129 |
| Haiku 4.5 | $0.00005 | $0.00064 |
Grade A, and why
evo-geospatial-earthquake-distance scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 71 lines — stays where its author put it; the contents beside it link to each section on GitHub.
evo-geospatial-earthquake-distance
Complete pipeline for finding the earthquake furthest from a tectonic plate boundary within the plate.
Key Concepts
USGS GeoJSON Format
- Root: FeatureCollection with
featuresarray - Each feature:
id(string),properties(mag, place, time in ms epoch),geometry(Point with [lon, lat, depth]) - Time is milliseconds since Unix epoch, convert with
pd.to_datetime(ms, unit='ms', utc=True) - ISO 8601 format:
strftime('%Y-%m-%dT%H:%M:%SZ')
Pipeline Steps
- Parse earthquakes, store original lat/lon, shift geometry to 0-360
- Spatial join with plate polygon using
predicate='within'(notop) - Reproject to EPSG:3832 (PDC Mercator) for metric distances
- Compute distances via
GeoSeries.distance(boundary_geom)broadcast - Find max distance earthquake, format and export
Output Format
{
"id": "earthquake_id",
"place": "location description",
"time": "YYYY-MM-DDTHH:MM:SSZ",
"magnitude": 5.88,
"latitude": 19.1868,
"longitude": -155.4932,
"distance_km": 4143.49
}
Functions
parse_usgs_earthquakes(path) -> GeoDataFrame
Parses USGS GeoJSON. Stores original lat/lon columns. Shifts geometry to 0-360.
filter_earthquakes_within_plate(eq_gdf, plate_gdf) -> GeoDataFrame
Spatial join with predicate='within'.
compute_boundary_distances(eq_gdf, boundary_geom) -> Series
Reprojects to EPSG:3832, computes distances in km.
find_furthest_earthquake(eq_gdf, distances_km) -> Series
Finds earthquake with maximum distance.
format_and_export_result(row, output_path) -> dict
Formats to JSON with ISO 8601 time, original coordinates.
Usage
import sys
sys.path.insert(0, '/app/environment/skills/evo-geospatial-antimeridian-plates/scripts')
sys.path.insert(0, '/app/environment/skills/evo-geospatial-earthquake-distance/scripts')
from utils import load_plate_polygon, load_plate_boundaries
# Rename to avoid conflict
import importlib
import utils as eq_utils
# Or more explicitly:
from utils import parse_usgs_earthquakes, filter_earthquakes_within_plate
from utils import compute_boundary_distances, find_furthest_earthquake, format_and_export_result
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- today First seen · 71 lines · 48 tokens per session scan A d118925eca75
evo-geospatial-earthquake-distance is a skill published in the GitHub repository OpenLAIR/OpenSkill (88 stars, last pushed yesterday), licensed Apache-2.0. It adds 48 tokens to every session and 643 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-11.
Other skills, from other repositories
fba-simulator
Run Flux Balance Analysis (FBA) and related constraint-based simulations using COBRApy. Covers standard FBA, parsimonious FBA (pFBA), Flux Variability Analysis (FVA), loopless FBA, gene/reaction knockouts, and carbon source swapping. Outputs flux distributions and CSV files.
gsmm-validator
Validate a COBRApy genome-scale metabolic model for mass/charge balance, stoichiometric consistency, biomass producibility, dead-end metabolites, thermodynamic loops, and GPR rule formatting. Outputs a structured validation report with errors and warnings.
gsmm-builder
Build or load a genome-scale metabolic model (GSMM) using COBRApy. Covers loading from BIGG, constructing minimal models from scratch, setting medium constraints, and exporting validated .json model files.
stat-result-validator
Validate statistical research outputs for formulation quality, method-to- problem alignment, theory presence, experimental evidence, fair comparison, artifact completeness, and final-claim consistency.
statistical-theory-analysis
Analyze theoretical properties of statistical methods under the formal formulation: identifiability, bias, variance, consistency, asymptotics, coverage, error bounds, robustness, and limitations.
meta-analysis
Statistical methods for combining results across multiple studies. Use when aggregating cross-study or cross-experiment results.