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 ericrisco/rsc-harness --skill machine-learninggit clone --depth 1 https://github.com/ericrisco/rsc-harnessWrote 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/ericrisco/rsc-harness/machine-learning)<a href="https://agentmods.dev/skills/ericrisco/rsc-harness/machine-learning"><img src="https://agentmods.dev/badge/skills/ericrisco/rsc-harness/machine-learning/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/ericrisco/rsc-harness/machine-learning"><img src="https://agentmods.dev/badge/skills/ericrisco/rsc-harness/machine-learning.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.00110 | $0.04220 |
| Opus 5.5 | $0.00044 | $0.01688 |
| Sonnet 5.5 | $0.00022 | $0.00844 |
| Haiku 4.5 | $0.00011 | $0.00422 |
Grade A, and why
machine-learning 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 — 229 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Machine learning — classic/tabular models, done without lying to yourself
Tabular ML is easy to run and easy to fool yourself with. The deliverable is never "the notebook
printed 0.99" — it is an honest estimate of how the model behaves on data it has never seen: a
Pipeline that fits every transform on train only, a metric that survives class imbalance, and a
DummyClassifier baseline it beats. A number you can't reproduce on a sacred test set you touched exactly
once isn't a result — it's a leak you haven't found yet.
Is this the right skill? (decide first)
| Your situation | Reach for |
|---|---|
| Rows of features, predict a column, with trees / linear models / sklearn | machine-learning (this skill) |
| Images, audio, long text, sequences, or you need a neural net / PyTorch | deep-learning |
| The table is still dirty (nulls, dupes, mixed types, bad dates) | data-cleaning first — it hands you a validated table |
| Text/token classification, NER, tokenization, LLM-adjacent NLP metrics | nlp (a TF-IDF + linear/GBDT baseline still lives happily in this skill's pipeline) |
| KPIs, dashboards, "explain the business" | analytics / business-intelligence |
| Forecast a dated series forward (revenue next quarter) | forecasting |
| Building a training corpus of JSONL messages / preference pairs for an LLM | training-data |
This skill starts at a clean, validated table (rows × features + a target) and ends at a fitted,
honestly-scored model with a test-set number and a baseline it beats. Cleaning is upstream — consume the
validated frame data-cleaning produced; don't re-teach it here.
Version reality (verify at author time — this line moves monthly)
Verified 2026-07: scikit-learn current major ~1.9 (1.9.0 shipped 2026-06-02, Python 3.11–3.14) — do
NOT pin from memory; check the current stable at scikit-learn.org, the 1.x line ships every few months.
GBDTs: XGBoost 3.x and LightGBM 4.x (xgboost 3.3, lightgbm 4.6 current), plus sklearn's own
HistGradientBoostingClassifier/...Regressor — a fast native GBDT that eats NaN and (with
categorical_features="from_dtype") categoricals with no preprocessing. Pin what you ship
(python owns the environment and the pinning); state versions as "~X (verify)",
never as frozen fact.
What ships with it
5 files 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.
- 1mo ago First seen · 229 lines · 110 tokens per session scan A 30d0ff166a69
machine-learning is a skill published in the GitHub repository ericrisco/rsc-harness (237 stars, last pushed today), licensed MIT. It adds 110 tokens to every session and 4,220 once invoked, about $0.0004 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-03.
Other skills, from other repositories
scikit-learn
Machine learning in Python with scikit-learn. Use when working with supervised learning (classification, regression), unsupervised learning (clustering, dimensionality reduction), model evaluation, hyperparameter tuning, preprocessing, or building ML pipelines. Provides comprehensive reference documentation for…
mcp-ml-toolkit-zx
A machine-learning toolkit covering common methods for classification, prediction, grouping, dimensionality reduction, data preparation, and model evaluation. Classification predicts categories, regression predicts numbers, and clustering groups similar records.
build-ml-pipeline
Declare the pipeline from data source to predictor as a skrub DataOps graph. Stateless steps use .skb.applyfunc. Stateful steps use .skb.apply. After the graph exists, attach the locked splitter and any non-default score. No fit, tune, persistence, or skore.evaluate. TRIGGER when writing or editing any link from data…
sync-ml-reports
Copy skore reports between local, Hub, and MLflow with skore sync, and optionally switch the recorded upload destination. Trigger when the user asks to sync or migrate reports, switch skore mode, upload reports to Hub or MLflow, or pull Hub/MLflow reports onto disk. First G-SKORE-MODE pick stays evaluate-ml-pipeline.
statistical-modeling
Statistical modeling and machine learning for biomarker discovery, survival analysis, classification, regression, and model interpretation.
explore-ml-data
Owns data understanding before any model is designed. Place dataanalysis/dataanalysis.py and do not execute it. Run materialize.py once, write dataanalysis.md and JOURNAL § Data understanding. Never design the model, edit src/ /, or modify raw data files. TRIGGER when the user asks to explore, profile, or understand…