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 equinor/neqsim --skill neqsim-electrolyte-systemsgit clone --depth 1 https://github.com/equinor/neqsimWrote 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/equinor/neqsim/neqsim-electrolyte-systems)<a href="https://agentmods.dev/skills/equinor/neqsim/neqsim-electrolyte-systems"><img src="https://agentmods.dev/badge/skills/equinor/neqsim/neqsim-electrolyte-systems/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/equinor/neqsim/neqsim-electrolyte-systems"><img src="https://agentmods.dev/badge/skills/equinor/neqsim/neqsim-electrolyte-systems.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00090 | $0.03931 |
| Opus 5 | $0.00045 | $0.01965 |
| Sonnet 5 | $0.00018 | $0.00786 |
| Haiku 4.5 | $0.00009 | $0.00393 |
Grade A, and why
neqsim-electrolyte-systems 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 — 331 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Electrolyte Systems Guide
Guide for modeling electrolyte/brine systems in NeqSim.
When to Use Electrolyte Models
- Produced water with dissolved salts (NaCl, CaCl2, BaCl4)
- Scale prediction (CaCO3, BaSO4, CaSO4)
- CO2/H2S solubility in brines
- MEG injection rate calculations
- Hydrate inhibitor dosing
- Seawater injection and mixing
- Desalination process modeling
EOS Selection for Electrolyte Systems
| System | NeqSim Class | Mixing Rule |
|---|---|---|
| Water + salt + HC gas | SystemElectrolyteCPAstatoil |
10 |
| MEG/DEG + water + gas | SystemSrkCPAstatoil |
10 |
| Pure water + gas | SystemSrkCPAstatoil |
10 |
| Brine + multiple salts | SystemElectrolyteCPAstatoil |
10 |
Basic Electrolyte Setup
import neqsim.thermo.system.SystemElectrolyteCPAstatoil;
// Create electrolyte system
SystemInterface brine = new SystemElectrolyteCPAstatoil(273.15 + 80.0, 200.0);
// Add gas components
brine.addComponent("CO2", 0.05);
brine.addComponent("methane", 0.80);
// Add water
brine.addComponent("water", 0.10);
// Add salt components (as ions)
brine.addComponent("Na+", 0.02);
brine.addComponent("Cl-", 0.02);
brine.addComponent("Ca++", 0.005);
brine.addComponent("SO4--", 0.005);
// Set mixing rule (MUST be numeric for CPA)
brine.setMixingRule(10);
brine.setMultiPhaseCheck(true);
Common Ion Components in NeqSim
| Ion | NeqSim Name | Common Source |
|---|---|---|
| Sodium | "Na+" |
NaCl |
| Chloride | "Cl-" |
NaCl, CaCl2 |
| Calcium | "Ca++" |
CaCl2, CaCO3 |
| Barium | "Ba++" |
BaSO4, BaCl2 |
| Strontium | "Sr++" |
SrSO4 |
| Sulfate | "SO4--" |
Na2SO4, BaSO4 |
| Bicarbonate | "HCO3-" |
NaHCO3 |
| Carbonate | "CO3--" |
CaCO3, Na2CO3 |
| Magnesium | "Mg++" |
MgCl2 |
| Potassium | "K+" |
KCl |
| Iron(II) | "Fe++" |
FeCl2, FeS |
Produced Water Modeling
// Typical produced water composition
SystemInterface prodWater = new SystemElectrolyteCPAstatoil(273.15 + 80.0, 50.0);
// Dissolved gas
prodWater.addComponent("CO2", 0.01);
prodWater.addComponent("H2S", 0.001);
prodWater.addComponent("methane", 0.005);
// Water (dominant)
prodWater.addComponent("water", 0.90);
// Ions (typical North Sea produced water)
prodWater.addComponent("Na+", 0.03);
prodWater.addComponent("Cl-", 0.035);
prodWater.addComponent("Ca++", 0.003);
prodWater.addComponent("Ba++", 0.0001);
prodWater.addComponent("SO4--", 0.001);
prodWater.addComponent("HCO3-", 0.005);
prodWater.setMixingRule(10);
prodWater.setMultiPhaseCheck(true);
// Flash to get gas/liquid split
ThermodynamicOperations ops = new ThermodynamicOperations(prodWater);
ops.TPflash();
prodWater.initProperties();
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 Changed · +7 lines 643d7ecab47a
- 3d ago Changed · +3 lines b3ffdbaca9f9
- 5d ago Changed · +65 lines 951f9534a229
- 9d ago First seen · 256 lines · 90 tokens per session scan A 0dcbe3c84100
neqsim-electrolyte-systems is a skill published in the GitHub repository equinor/neqsim (151 stars, last pushed today), licensed Apache-2.0. It adds 90 tokens to every session and 3,931 once invoked, about $0.0005 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
pythermodb-reference-maker
Extract thermodynamic tables and correlations from references (CSV, PDF, images, or text) and convert them into the project's structured pyThermoDB YAML schema. Supports data tables, constants tables, matrix-parameter tables, and equation-based correlations (e.g., Cp, vapor pressure, density, enthalpy of…
seismic-interpretation
End-to-end seismic interpretation workflow from SEG-Y loading through signal processing, rock physics, and visualization. Use when working with seismic data analysis pipelines.
cantera-combustion
Use this Skill for combustion simulations with Cantera: mechanism loading, freely propagating flames, ignition delay, reactors, and sensitivity analysis.
matlab
Build, review, migrate, and safely plan MATLAB or GNU Octave numerical workflows, including arrays, tabular/time data, tests, projects, graphics, MAT files, and explicit Python interoperability.
phylogenetics
Build and analyze phylogenetic trees using MAFFT (multiple alignment), IQ-TREE 2 (maximum likelihood), and FastTree (fast NJ/ML). Visualize with ETE3 or FigTree. For evolutionary analysis, microbial genomics, viral phylodynamics, protein family analysis, and molecular clock studies.
ensembl-database
Query Ensembl genome database REST API for 250+ species. Gene lookups, sequence retrieval, variant analysis, comparative genomics, orthologs, VEP predictions, for genomic research.