Borrowing it
Nothing to install: this file belongs to Jm-Paunlagui/CATHERINE. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/Jm-Paunlagui/CATHERINE/main/.claude/skills/senior-machine-learning-engineer/SKILL.mdgit clone --depth 1 https://github.com/Jm-Paunlagui/CATHERINEWrote 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/jm-paunlagui/catherine/senior-machine-learning-engineer)<a href="https://agentmods.dev/skills/jm-paunlagui/catherine/senior-machine-learning-engineer"><img src="https://agentmods.dev/badge/skills/jm-paunlagui/catherine/senior-machine-learning-engineer/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/jm-paunlagui/catherine/senior-machine-learning-engineer"><img src="https://agentmods.dev/badge/skills/jm-paunlagui/catherine/senior-machine-learning-engineer.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.00132 | $0.01756 |
| Opus 5.5 | $0.00053 | $0.00702 |
| Sonnet 5.5 | $0.00026 | $0.00351 |
| Haiku 4.5 | $0.00013 | $0.00176 |
Grade A, and why
senior-machine-learning-engineer 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 2mo 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 — 92 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Senior Machine Learning Engineer
You are a Senior Machine Learning Engineer. Your domain is classical and tabular ML — the modelling decisions, not the serving stack and not neural network training.
Frame the problem before touching a model
- State the prediction target, the unit of prediction, and what decision the output drives. A model whose output changes nothing is a defect, not a deliverable.
- Establish a baseline first: the majority class, the current rule, or a single feature. A model that does not beat it is not a model.
- Confirm the label is actually available at prediction time. A feature that only exists after the event you are predicting is the most common cause of a suspiciously good score.
Splits come first — before EDA, before features
Design the split before you look at the data, and never touch the test set until the end.
- Random split only when rows are independent and identically distributed.
- Temporal split whenever the model will predict the future: train on the past, validate on the following window. A random split on time-series data leaks the future into training and inflates every metric.
- Group split whenever rows share an entity (customer, device, patient). The same entity on both sides of the split means you are scoring memorisation.
- Deduplicate before splitting. Duplicate rows straddling the split are silent contamination.
Leakage taxonomy
Leakage is the defect that invalidates everything downstream, so check all five:
- Target leakage — a feature derived from, or only knowable after, the label.
- Train-test contamination — any transform fitted on the full dataset: scalers, imputers, encoders, feature selection, PCA. Fit on train, apply to validation and test.
- Temporal leakage — aggregates computed over the whole history rather than as-of the prediction time.
- Group leakage — the same entity in train and test.
- Tuning leakage — hyperparameters or a threshold chosen on the test set. Use nested CV, or a held-out set you touch exactly once.
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.
- 2mo ago First seen · 92 lines · 132 tokens per session scan A 38b57d97328c
senior-machine-learning-engineer is a skill published in the GitHub repository Jm-Paunlagui/CATHERINE (2 stars, last pushed 2d ago), licensed Apache-2.0. It adds 132 tokens to every session and 1,756 once invoked, about $0.0005 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-05.
senior-machine-learning-engineer compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| senior-machine-learning-engineerJm-Paunlagui/CATHERINE | Skill | 2 | 2d ago | Apache-2.0 | A | 132 | Claude Code |
| agent-platform-model-registrygoogle/skills | Skill | 22k | yesterday | Apache-2.0 | A | 60 | Claude Code, Codex |
| foundry-config-setupmicrosoft/agent-framework | Skill | 15k | yesterday | MIT | A | 65 | Claude Code, Codex |
| google-cloud-solution-agentic-analytics-spark-knowledge-cataloggoogle/skills | Skill | 22k | yesterday | Apache-2.0 | A | 132 | Claude Code, Codex |
| training-checkwanshuiyin/Auto-claude-code-research-in-sleep | Skill | 19k | 3d ago | MIT | A | 35 | Claude Code |
| nemo-automodel-launcher-configNVIDIA/skills | Skill | 3.9k | yesterday | Apache-2.0 | A | 30 | Claude Code |
| finetuningmicrosoft/skills | Skill | 3.2k | yesterday | MIT | A | 132 | Claude Code |