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.
git 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/commands/steadfastasart/geoscience-skills/model-3d)<a href="https://agentmods.dev/commands/steadfastasart/geoscience-skills/model-3d"><img src="https://agentmods.dev/badge/commands/steadfastasart/geoscience-skills/model-3d.svg" alt="Measured on agentmods" 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.00014 | $0.00484 |
| Opus 5 | $0.00007 | $0.00242 |
| Sonnet 5 | $0.00003 | $0.00097 |
| Haiku 4.5 | $0.00001 | $0.00048 |
Grade A, and why
model-3d 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 7d 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 — 61 lines — stays where its author put it; the contents beside it link to each section on GitHub.
3D Geological Modelling Workflow
Guide the user through building a 3D geological model. Determine the appropriate skill chain based on input data and modelling goals.
Decision Tree
-
What input data do you have?
- GIS layers (shapefiles, rasters, DEMs) → Use
gemgisskill for data preparation - Borehole data / orientations → Load directly into modelling engine
- Pre-processed surfaces → Skip to model setup
- GIS layers (shapefiles, rasters, DEMs) → Use
-
Which modelling engine fits your problem?
- Complex faulted geology, implicit surfaces, GPU support → Use
gempyskill - Fold-dominated structures, lightweight, tetrahedral meshes → Use
loopstructuralskill
- Complex faulted geology, implicit surfaces, GPU support → Use
-
Visualization needs?
- Interactive 3D model rendering → Use
pyvistaskill - Cross-sections and map views → matplotlib (built-in)
- Interactive 3D model rendering → Use
Skill Chain
gemgis (data prep from GIS) → gempy (implicit modelling, GPU) → pyvista (3D viz)
→ loopstructural (fold-focused, light) → pyvista (3D viz)
Step Prompts
For each step, invoke the relevant domain skill and follow its guidance.
Step 1: Data Preparation
- Extract surface points and orientations from GIS data
- Reproject coordinates to a consistent CRS
- Prepare topography and stratigraphic contact data
Step 2: Model Setup
- Define model extent and resolution
- Assign stratigraphic pile and fault network
- Set surface points and orientation gradients
Step 3: Compute Model
- GemPy: run interpolation with dual kriging, configure GPU if available
- LoopStructural: build model with fold constraints, set solver options
- Check for geological consistency (layer ordering, fault offsets)
Step 4: Validate
- Compare model surfaces against input data
- Check cross-sections for geological plausibility
- Evaluate model uncertainty if supported
Step 5: Visualization
- Render 3D block model and surfaces interactively
- Extract cross-sections at key locations
- Export model to common formats (VTK, GOCAD)
$ARGUMENTS
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.
- 7d ago First seen · 61 lines · 14 tokens per session scan A af2eafc5a8ae
model-3d is a command published in the GitHub repository SteadfastAsArt/geoscience-skills (57 stars, last pushed 5mo ago), licensed MIT. It adds 14 tokens to every session and 484 once invoked, about $0.0001 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 commands, from other repositories
diff
Quantitative volume comparison between a CadQuery model and a reference STEP file.
graphite-morphology-classify
Classify graphite in a cast-iron micrograph per ASTM A247 / ISO 945-1, quantify nodularity, and read the matrix — the single most diagnostic observation in a cast-iron case.
checklist
Generate a custom checklist for the current feature based on user requirements.
clarify
Identify underspecified areas in the current feature spec by asking up to 5 highly targeted clarification questions and encoding answers back into the spec.
specify
Create or update the feature specification from a natural language feature description.
analyze
Perform a non-destructive cross-artifact consistency and quality analysis across spec.md, plan.md, and tasks.md after task generation.