CtrlK
BlogDocsLog inGet started
Tessl Logo

splitting-datasets

Split datasets into training, validation, and test partitions with the right stratification and temporal rules. Use as a narrow preprocessing helper once the broader ML workflow is already chosen, not as the main route owner for an end-to-end ML task.

56

Quality

66%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./bundled/skills/splitting-datasets/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

50%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A lean, well-organized body that suffers from low actionability — it describes outputs and boundaries instead of giving executable split guidance — and fails to surface the bundled script, config, and schema files that would make it actionable.

Suggestions

Add an executable Quick start that invokes scripts/split_data.py with concrete ratios and a stratification flag, or at minimum a copy-paste scikit-learn train_test_split example.

Insert a brief step sequence (choose split type -> set ratios/seed -> stratify or enforce temporal/group constraint -> validate no leakage) with an explicit validation checkpoint before handoff.

Link the bundle from the body (e.g., 'See scripts/split_data.py and assets/split_data_config.yaml for a ready-to-run example') so progressive disclosure actually navigates to the provided files.

DimensionReasoningScore

Conciseness

The ~30-line body is lean with no concept-explanation padding (no 'what is stratification' or library background), assuming Claude's competence; every section earns its place rather than the score-2 example that includes unnecessary justification.

3 / 3

Actionability

The body only describes outputs ('Partition strategy with ratios, random seeds, and stratification rules') and never gives executable code, commands, concrete ratios, or even a reference to the bundled split_data.py — it describes rather than instructs, matching the score-1 'describes rather than instructs' anchor and clearly below the pseudocode score-2 example.

1 / 3

Workflow Clarity

Sections (When to Use, Not For, Typical Outputs) provide some implicit structure, but there is no explicit operational sequence and no validation checkpoint despite data partitioning being a batch operation that the rubric flags as needing validation, which caps the score below 3; it is above 1 because organization is present.

2 / 3

Progressive Disclosure

The body is short and well-sectioned, but the bundled resources in references/, scripts/, and assets/ (including split_data.py, split_data_config.yaml, dataset_schema.json) are never referenced or linked from the body, so navigation to the bundle is not signaled — matching the score-2 anchor of structure present but references not clearly signaled rather than the well-linked score-3 example.

2 / 3

Total

8

/

12

Passed

Description

82%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A specific, well-positioned description with good natural trigger terms and clear distinctiveness, weakened only by 'when' guidance that frames positioning rather than explicit user-facing triggers.

Suggestions

Add an explicit user-trigger clause such as 'Use when the user asks to split a dataset into train/validation/test sets or mentions stratified or temporal splits' to lift completeness to 3.

Consider adding common user phrasings like 'train/test split' or 'holdout set' to broaden trigger-term coverage.

DimensionReasoningScore

Specificity

Names multiple concrete actions — 'Split datasets into training, validation, and test partitions with the right stratification and temporal rules' — matching the multiple-specific-actions anchor rather than the single-action score-2 example.

3 / 3

Completeness

Clearly states what it does, but the 'when' is positioning guidance ('Use as a narrow preprocessing helper once the broader ML workflow is already chosen') rather than explicit natural-user triggers like 'use when the user asks to split a dataset', so it sits at the has-what-but-when-only-implied/conditional level rather than the explicit-trigger score-3 anchor.

2 / 3

Trigger Term Quality

Uses natural terms a user would say when needing this skill ('training, validation, and test partitions', 'stratification', 'temporal rules', 'preprocessing', 'ML workflow'), giving good coverage rather than only a couple of relevant keywords.

3 / 3

Distinctiveness Conflict Risk

The 'narrow preprocessing helper' framing and explicit 'not as the main route owner for an end-to-end ML task' carve out a clear niche unlikely to conflict with broader ML skills.

3 / 3

Total

11

/

12

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

14

/

16

Passed

Repository
foryourhealth111-pixel/Vibe-Skills
Reviewed

Table of Contents

Is this your skill?

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.