CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

hugging-face-evaluation

Add and manage evaluation results in Hugging Face model cards. Supports extracting eval tables from README content, importing scores from Artificial Analysis API, and running custom model evaluations with vLLM/lighteval. Works with the model-index metadata format.

56

Quality

71%

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 ./backend/cli/skills/ml-training/hugging-face-evaluation/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

62%Weight 40%Scale 1-5

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

Highly actionable content with excellent workflow sequencing, validation checkpoints, and error-recovery guidance, undermined by heavy duplication (the same commands restated in three or four sections) and a monolithic 645-line structure that inlines task catalogs, dependency lists, and troubleshooting that belong in reference files. One referenced script (train_sft_example.py) does not exist.

Suggestions

Collapse the duplicated command blocks: keep 'Key workflow', Method 1, and 'Common Patterns' as brief scenarios that point to a single 'Commands Reference' section instead of restating full invocations.

Move the lighteval task-catalog guidance, hardware recommendation tables, and troubleshooting catalog into a references/ file (e.g. references/tasks-and-troubleshooting.md) and link to it, keeping SKILL.md as an overview.

Fix the dangling reference to scripts/train_sft_example.py (remove it or point to the actual vLLM scripts) and align the HF Jobs example paths with the stated relative-path convention; also mention scripts/test_extraction.py if it is part of the intended workflow.

DimensionReasoningScore

Conciseness

The ~645-line body duplicates the same commands many times: 'get-prs' appears 6 times, the extract-readme command block is repeated in 'Key workflow', Method 1, 'Commands Reference', and 'Common Patterns', and dependencies and the version number are restated from the frontmatter in dedicated sections. This is noticeable token waste from redundant sections rather than explanations of known concepts, fitting 'noticeably verbose; several unnecessary explanations or padded sections' — not a 3, since the duplication is pervasive rather than isolated.

2 / 5

Actionability

The body is dominated by concrete, copy-paste-ready CLI invocations with real flags, task-name formats, hardware tables, and exact troubleshooting fixes — close to fully executable. However the prominent 'Run Custom Model Evaluations with vLLM (NEW)' section instructs 'uv run scripts/train_sft_example.py', a script that does not exist in scripts/, and the HF Jobs examples use inconsistent absolute-style paths ('skills/ml-training/.../inspect_eval_uv.py') against the stated relative-path rule. These are minor gaps that keep it just below the fully executable anchor.

4 / 5

Workflow Clarity

The main workflow is explicitly sequenced (get-prs → inspect-tables → extract-readme → --apply/--create-pr) with an explicit pre-flight guard for the destructive/batch PR-creation step ('MUST check for existing open PRs'), a validation checklist ('YAML is printed by default; compare against the README table before applying'), and a thorough troubleshooting section providing error→fix feedback loops. This matches the anchor with explicit validation steps and error-recovery guidance; not a 4 because the checkpoints are already explicit rather than merely present.

5 / 5

Progressive Disclosure

The bundle (7 scripts in scripts/, no references/ or assets/) is well used for commands, but the SKILL.md body is a ~645-line monolith containing material that clearly belongs in reference files: the full lighteval task-catalog guidance, the dependency lists (already in frontmatter), the hardware recommendation tables, and the full troubleshooting catalog. Referenced paths are mostly real (one broken: train_sft_example.py; one unadvertised: test_extraction.py), but there is no references/ layer at all, so long-form detail is inlined — matching 'Some structure but... content that should be separate is inline' rather than the well-split structure of a 4.

3 / 5

Total

14

/

20

Passed

Description

75%Weight 40%Scale 1-5

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 strong 'what' statement with specific, concrete capabilities and a clearly distinct niche, but it lacks any 'when to use' trigger guidance and misses a few natural user phrasings like 'benchmark', 'leaderboard', or 'evals'. Adding an explicit Use-when clause would lift it substantially.

Suggestions

Append an explicit trigger clause, e.g. 'Use when the user wants to add benchmark or evaluation results to a Hugging Face model card, import Artificial Analysis scores, or run evals with vLLM/lighteval.'

Include natural user synonyms such as 'benchmark', 'leaderboard', 'evals', and 'model card README' alongside the current terminology.

Consider phrasing capabilities in the imperative/third-person style used by the good examples (e.g., 'Extracts eval tables...', 'Imports scores...') for consistency with the trigger clause.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — 'Add and manage evaluation results in Hugging Face model cards', 'extracting eval tables from README content', 'importing scores from Artificial Analysis API', and 'running custom model evaluations with vLLM/lighteval' — plus the concrete data format ('Works with the model-index metadata format'). This matches the anchor for multiple specific concrete actions with comprehensive coverage; a 4 would require minor gaps in the action list, which is not the case.

5 / 5

Completeness

It clearly answers 'what' (add/manage/extract/import/run evaluation results) but contains no 'Use when...' clause or equivalent trigger guidance for when Claude should invoke it. Per the judging guideline, a missing 'Use when...' caps completeness at 3 even with a clear 'what'.

3 / 5

Trigger Term Quality

Good keyword coverage including natural terms users would say: 'evaluation results', 'model cards', 'eval tables', 'benchmark' variants via 'scores', 'Hugging Face', 'vLLM', 'lighteval'. However common variations a user might naturally say are missing: 'benchmark', 'leaderboard', 'evals', and no mention of adding evals to a README/model card in user phrasing. This fits 'Good keyword coverage; a few natural terms missing' rather than the comprehensive synonym coverage of a 5.

4 / 5

Distinctiveness Conflict Risk

The Hugging Face model-card / model-index evaluation niche is very specific with distinct triggers (Artificial Analysis, vLLM, lighteval, model-index) and minimal overlap risk with other skills. Not a 4 because no closely related skill would plausibly collide on these triggers.

5 / 5

Total

17

/

20

Passed

Validation

68%

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

Validation — 11 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (666 lines); consider splitting into references/ and linking

Warning

metadata_version

'metadata.version' is missing

Warning

frontmatter_unknown_keys

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

Warning

relative_links

Relative link issues: 1 suspicious

Warning

referenced_paths_exist

Referenced path issues: 1 missing

Warning

Total

11

/

16

Passed

Repository

synthetic-sciences/openscience

Path

backend/cli/skills/ml-training/hugging-face-evaluation/SKILL.md

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.