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 SteadfastAsArt/geoscience-skills --skill seismic-interpretationgit clone --depth 1 https://github.com/SteadfastAsArt/geoscience-skillsWrote 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/steadfastasart/geoscience-skills/seismic-interpretation)<a href="https://agentmods.dev/skills/steadfastasart/geoscience-skills/seismic-interpretation"><img src="https://agentmods.dev/badge/skills/steadfastasart/geoscience-skills/seismic-interpretation/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/steadfastasart/geoscience-skills/seismic-interpretation"><img src="https://agentmods.dev/badge/skills/steadfastasart/geoscience-skills/seismic-interpretation.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.00037 | $0.02003 |
| Opus 5 | $0.00018 | $0.01001 |
| Sonnet 5 | $0.00007 | $0.00401 |
| Haiku 4.5 | $0.00004 | $0.00200 |
Grade A, and why
seismic-interpretation 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 10d ago.
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 — 218 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Seismic Interpretation Workflow
End-to-end pipeline for seismic data analysis, from loading SEG-Y files through signal processing, rock physics modelling, and 3D visualization.
Skill Chain
segyio obspy bruges disba pyvista
[SEG-Y I/O] --> [Signal Proc] --> [Rock Physics] --> [Dispersion] --> [3D Viz]
| | | | |
Load traces Filter/FFT AVO modelling Surface waves Volume render
Read headers Instrument resp Fluid sub Phase velocity Slice display
3D geometry Spectral anal Synthetics Inversion Horizon pick
Decision Points
| Question | If Yes | If No |
|---|---|---|
| Working with SEG-Y files? | Start with segyio |
Use obspy for miniSEED/SAC |
| Need frequency filtering or spectral analysis? | Use obspy signal tools |
Skip to rock physics |
| Performing AVO or fluid substitution? | Use bruges |
Skip to visualization |
| Analysing surface waves (MASW/SASW)? | Use disba for dispersion |
Skip disba |
| Need 3D volume rendering? | Use pyvista |
Use matplotlib for 2D |
Step-by-Step Orchestration
Stage 1: Data Loading (segyio)
import segyio
import numpy as np
# Load and inspect SEG-Y
with segyio.open('survey.sgy', 'r', iline=189, xline=193) as f:
n_traces = f.tracecount
n_samples = len(f.samples)
dt = f.samples[1] - f.samples[0] # ms
cube = segyio.tools.cube(f) # (ilines, xlines, samples)
# Extract header info for coordinates
cdp_x = f.attributes(segyio.TraceField.CDP_X)[:]
cdp_y = f.attributes(segyio.TraceField.CDP_Y)[:]
Stage 2: Signal Processing (obspy)
from obspy import Trace, Stream
from obspy.signal.filter import bandpass
# Convert numpy trace to obspy for processing
tr = Trace(data=cube[50, 100, :].astype(np.float64))
tr.stats.sampling_rate = 1000.0 / dt # Hz
tr.stats.delta = dt / 1000.0 # seconds
# Bandpass filter
tr.filter('bandpass', freqmin=5, freqmax=80, corners=4, zerophase=True)
# Spectral analysis
from obspy.signal.tf_misfit import cwt
scalogram = cwt(tr.data, dt=tr.stats.delta, w0=6, fmin=1, fmax=100, nf=50)
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.
- 10d ago First seen · 218 lines · 37 tokens per session scan A 585c9a3d1e0a
seismic-interpretation is a skill published in the GitHub repository SteadfastAsArt/geoscience-skills (57 stars, last pushed 5mo ago), licensed MIT. It adds 37 tokens to every session and 2,003 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-08-30.
Other skills, from other repositories
admet-reasoning
Interpretable ADMET analysis with mechanistic reasoning. Maps liabilities to structural causes and biological pathways. Based on CoTox (Park 2025) and DrugR (Liu 2026).
figure-composer
Compose one publication-grade multi-panel figure. Entry from a one-line claim + data files, OR from an existing figure via deriveoutlineprompt (you read the PNG). Runs a per-figure loop: outline (12-col grid, per-panel ask + labelbudget) → render each panel with paneltask (loading figure-style), one at a time or…
paper-narrative
Judge and reshape the STORY a paper's figures tell. Input is the work itself — manuscript (or abstract) + figure deck — no hand-written brief. paperbriefprompt(abstract, captions) hands you the prompt to write the brief yourself (pitch/vision/per-figure-claims); then you play a handling editor over the full deck and…
technical_figure_understanding
Read engineering figures deeply enough that a book, paper, or report can explain what the figure shows and why it matters. This skill complements figure-discussion: this skill extracts and classifies visual evidence; figure-discussion turns that evidence into observation, mechanism, implication, and recommendation…
paperlab_equation_dimensional_audit
Audit equations, dimensions, symbols, notation, and formula variants in PaperLab books. Use when technical chapters contain equations, units, and engineering correlations that must remain consistent across chapters.
paperlab_case_thread_continuity
Maintain consistency for recurring field, facility, and design cases across PaperLab books. Use when a book uses a repeated scenario as a teaching thread and assumptions must not drift silently.