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 algorithms, preprocessing techniques, pipelines, and best practices.
88
75%
Does it follow best practices?
Impact
98%
1.10xAverage score across 6 eval scenarios
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./scientific-skills/scikit-learn/SKILL.mdQuality
Discovery
100%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a strong skill description that clearly identifies its domain (scikit-learn ML in Python), lists specific capabilities across supervised and unsupervised learning, and includes an explicit 'Use when...' clause with comprehensive trigger terms. It uses proper third-person voice and is well-structured without unnecessary verbosity. The description would effectively help Claude distinguish this skill from related but different skills like general data science or deep learning tools.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions and domains: classification, regression, clustering, dimensionality reduction, model evaluation, hyperparameter tuning, preprocessing, and building ML pipelines. These are concrete, well-defined ML tasks. | 3 / 3 |
Completeness | Clearly answers both 'what' (ML in Python with scikit-learn, reference documentation for algorithms, preprocessing, pipelines, best practices) and 'when' (explicit 'Use when...' clause listing supervised learning, unsupervised learning, model evaluation, hyperparameter tuning, preprocessing, or building ML pipelines). | 3 / 3 |
Trigger Term Quality | Excellent coverage of natural terms users would say: 'machine learning', 'scikit-learn', 'classification', 'regression', 'clustering', 'dimensionality reduction', 'hyperparameter tuning', 'preprocessing', 'ML pipelines'. These are all terms users would naturally use when seeking ML help in Python. | 3 / 3 |
Distinctiveness Conflict Risk | Clearly scoped to scikit-learn specifically, which distinguishes it from general Python skills, deep learning skills (TensorFlow/PyTorch), or data analysis skills (pandas). The combination of 'scikit-learn' and specific ML task types creates a distinct niche. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
50%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill is highly actionable with excellent, executable code examples covering classification, clustering, pipelines, and troubleshooting. However, it is severely bloated — it reads more like a comprehensive tutorial or textbook chapter than a concise skill file. Much of the content (algorithm lists, 'when to use' descriptions, benefits lists) is information Claude already knows and should be trimmed or moved entirely to the reference files.
Suggestions
Cut the 'When to Use This Skill' section entirely — Claude can infer applicability from the skill description and content.
Move the 'Core Capabilities' algorithm listings and 'when to use' descriptions into the reference files, replacing them with a brief table or one-line pointers (e.g., '**Supervised Learning**: See references/supervised_learning.md').
Add explicit validation checkpoints to workflows, such as 'Check X_train.shape and y_train.value_counts() before proceeding' and 'Verify cross-validation scores are stable before final evaluation'.
Fix the installation commands — 'uv uv pip install' appears to be a typo (doubled 'uv').
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Extremely verbose at ~400+ lines. Contains extensive explanations Claude already knows (what classification is, what clustering is, when to use pipelines, algorithm lists). The 'When to Use This Skill' section, 'When to use' subsections under each capability, 'Benefits' lists, and algorithm enumeration are all unnecessary padding. The 'Core Capabilities' section is essentially a table of contents for the reference files but bloated with descriptions Claude doesn't need. | 1 / 3 |
Actionability | Code examples are concrete, executable, and copy-paste ready. The Quick Start, Common Workflows, Best Practices, and Troubleshooting sections all contain fully functional Python code with proper imports and realistic usage patterns. | 3 / 3 |
Workflow Clarity | The 'Building a Classification Model' and 'Performing Clustering Analysis' workflows have clear numbered steps with code, but lack explicit validation checkpoints. There's no 'verify your data shape', 'check for class imbalance before proceeding', or 'validate pipeline output' steps. The best practices section mentions data leakage prevention but doesn't integrate it as a validation checkpoint in the workflows. | 2 / 3 |
Progressive Disclosure | References to detailed files (references/supervised_learning.md, references/preprocessing.md, etc.) are well-signaled and one level deep, which is good. However, the SKILL.md itself contains far too much inline content that should be in those reference files — the Core Capabilities section essentially duplicates what should be in the references, and the Common Workflows section is very long. No bundle files were provided to verify references exist. | 2 / 3 |
Total | 8 / 12 Passed |
Validation
81%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
skill_md_line_count | SKILL.md is long (520 lines); consider splitting into references/ and linking | Warning |
metadata_version | 'metadata.version' is missing | Warning |
Total | 9 / 11 Passed | |
75c41d7
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.