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 segysakgit 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/segysak)<a href="https://agentmods.dev/skills/steadfastasart/geoscience-skills/segysak"><img src="https://agentmods.dev/badge/skills/steadfastasart/geoscience-skills/segysak/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/segysak"><img src="https://agentmods.dev/badge/skills/steadfastasart/geoscience-skills/segysak.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.00053 | $0.00686 |
| Opus 5.5 | $0.00021 | $0.00274 |
| Sonnet 5.5 | $0.00011 | $0.00137 |
| Haiku 4.5 | $0.00005 | $0.00069 |
Grade A, and why
segysak 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 1mo 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 — 70 lines — stays where its author put it; the contents beside it link to each section on GitHub.
SEGY-SAK
Map trace headers to labelled dimensions without losing the original survey geometry. Header byte assignments are evidence to inspect, not safe guesses.
Before opening
Inspect format/endian, trace count, sample count/interval, delay recording time, inline/crossline or CDP headers, coordinate units and scalar. SEG-Y sample intervals are stored in microseconds; the backend's vertical samples use milliseconds for ordinary time sections. A depth section needs an explicit depth convention. Confirm actual data units before labelling an axis.
Check dimension key uniqueness and missing traces. Sparse or irregular geometry may not form a complete rectangular cube. Keep the original trace index for exports. A dimension byte offset is one-based SEG-Y numbering (CDP ensemble is 21, inline is 189, crossline is 193); some upstream old examples use a wrong CDP offset. Use the actual file's header convention.
Labelled read
This fragment needs an existing, verified rectangular post-stack file. It uses
the 0.5 backend API; old segy_loader tutorials describe a different interface.
# example: labelled-segy
import xarray as xr
import segysak # registers accessors; the installed distribution provides the backend
with xr.open_dataset(
seismic_path,
engine="sgy_engine",
dim_byte_fields={"iline": 189, "xline": 193},
) as seismic:
inline_labels = seismic.iline.values.copy()
crossline_labels = seismic.xline.values.copy()
sample_coordinate = seismic.samples.values.copy()
amplitudes = seismic["data"].load().copy(deep=True)
For large surveys, open with Dask chunks chosen for the access pattern and retain
lazy operations until the selected result fits memory. Avoid .load() on a
whole production cube. Inspect coordinate variables before .sel() and use
.isel() only for integer positions.
Validation and exports
Compare several labelled traces against original trace samples using segyio,
including the last sample and nonzero start time. Verify shape, orientation,
missing-trace behavior and coordinate scalars. Round-trip any export and compare
headers as well as amplitudes; xarray labels alone do not preserve every SEG-Y
header or prove geographic CRS. Keep source hash, byte mapping and transforms.
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.
- 1mo ago First seen · 70 lines · 53 tokens per session scan A 4f9b1006469b
segysak is a skill published in the GitHub repository SteadfastAsArt/geoscience-skills (70 stars, last pushed 1mo ago), licensed MIT. It adds 53 tokens to every session and 686 once invoked, about $0.0002 per session on Opus 5.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-16.
Other skills, from other repositories
torchdrug
Builds and troubleshoots TorchDrug 0.2.1 workflows for molecular graphs, property prediction, self-supervised pretraining, molecule generation, retrosynthesis, protein representation learning, and knowledge graph reasoning. Use when code imports torchdrug or needs its datasets, models, tasks, or Engine.
deepspot-m
Generates transcriptome-wide virtual spatial transcriptomics from H&E histology with DeepSpot-M. Used for predicted log1p-CPM expression from 224x224 tiles at about 20x, querying the released protein-coding gene panel by symbol, and whole-slide prediction after resolution-aware tiling with histolab.
ml-training-recipes
Battle-tested PyTorch training recipes for all domains — LLMs, vision, diffusion, medical imaging, protein/drug discovery, spatial omics, genomics. Covers training loops, optimizer selection (AdamW, Muon), LR scheduling, mixed precision, debugging, and systematic experimentation. Use when training or fine-tuning…
nemo-mbridge-perf-expert-parallel-overlap
Validate and use MoE expert-parallel communication overlap in Megatron-Bridge, including overlapmoeexpertparallelcomm, delaywgradcompute, and flex dispatcher backends such as DeepEP and HybridEP.
evo2
Score, embed, and generate DNA sequences with Evo 2, a long-context genomic foundation model. Use this skill when: (1) Computing per-nucleotide or per-sequence likelihoods for variant effect scoring, (2) Embedding genomic windows for downstream classification, (3) Generating DNA conditioned on a prefix, (4) Scoring…
pick-a-pii-model
Select an on-device OpenMed PII model from the committed registry by language, runtime format, and size budget, then require recall validation before deployment. Use when an agent must choose a local PII detector for CPU, Apple Silicon, or a mobile export without relying on live model discovery.