CtrlK
BlogDocsLog inGet started
Tessl Logo

fair-esm2

Embed proteins with Meta AI's ESM-2 (`fair-esm` package). Use this skill when: (1) Extracting per-residue or per-sequence embeddings for downstream ML, (2) Masked-LM likelihood / mutation effect scoring, (3) Contact prediction from a sequence.

64

Quality

81%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

68%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.

A lean, highly actionable reference whose code recipes are near copy-paste ready and whose gotchas (padding, BOS/EOS, TORCH_HOME, package disambiguation) are exactly the non-obvious knowledge worth a skill. The main deductions are the absence of validation steps in the batch-embedding and remote-job workflows and a confusing, partially duplicated remote-compute prose tail.

Suggestions

Add explicit verification to the batch workflow — e.g., assert `seq_embs.shape == (B, D)` and that `len(residue_embs)` matches the input sequence count before using the embeddings, turning the batch recipe into a validate-then-proceed loop.

Complete the masked-LM example: show the actual masking step (`toks[0, pos] = alphabet.mask_idx` or equivalent) and the `logit[mut] − logit[wt]` comparison as runnable code instead of a comment hint.

Trim the remote-compute prose (the `suppressed`/`committed` sentences) to a one-line delegation to the `remote-compute-ssh` skill, keeping only the submitJob snippet and the TORCH_HOME note.

DimensionReasoningScore

Conciseness

The body is dense and earned — executable snippets, a prerequisites table, a model table, and genuinely non-obvious gotchas (BOS/EOS/padding slicing) with no filler explaining what proteins or transformers are. However, the remote-compute tail ("A final `.result()` read reports whether its follow-up was `suppressed` or had already been `committed`...") is jargon-heavy, confusing, and could be trimmed or delegated to the remote-compute-ssh skill it already points to.

4 / 5

Actionability

Embedding (single and batch), contact prediction, and job submission are copy-paste ready with exact slice indices and shape annotations. Two gaps keep it from 5: the masked-LM snippet is a fragment reusing prior variables and only hints ("mask the position and compare logit[mut] − logit[wt]") without showing how, and `environment=...` is an unexplained placeholder.

4 / 5

Workflow Clarity

Sections are logically ordered (prerequisites → recipes → output format → remote compute → troubleshooting) and the compute flow has checkpoints (save job_id, non-blocking status/result queries), but batch operations lack explicit validation — the batch-embedding snippet has no verification (e.g., shape/ordering checks) and the remote 200-sequence job has no result verification. Per the rubric, batch workflows missing validation steps cap workflow clarity at 3.

3 / 5

Progressive Disclosure

No bundle files exist; the single ~130-line body is well-sectioned and correctly delegates remote-compute and structure-prediction detail to the `remote-compute-ssh` and `esmfold2` skills (clear one-level cross-skill pointers). It is not the under-50-line case, and the remote-compute section partially duplicates material that belongs to the referenced skill, so it fits "good structure; minor organization gaps" rather than 5.

4 / 5

Total

15

/

20

Passed

Description

88%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 description: it states concrete capabilities in third person, gives an explicit three-item trigger list, and names the exact package and model. The only weaknesses are a few missing natural synonyms and a minor collision risk with the sibling esmfold2 skill that the description itself does not disambiguate.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — "Embed proteins with Meta AI's ESM-2", "Extracting per-residue or per-sequence embeddings", "Masked-LM likelihood / mutation effect scoring", "Contact prediction" — covering all three capabilities the skill body implements. This matches the comprehensive-coverage anchor; nothing is vague or padded.

5 / 5

Completeness

Explicitly answers both: "Embed proteins with Meta AI's ESM-2 (`fair-esm` package)" (what) and "Use this skill when: (1)... (2)... (3)..." (when, with concrete numbered triggers). This is structurally identical to the score-5 anchor example combining a what-statement with an explicit trigger list.

5 / 5

Trigger Term Quality

Natural terms a protein-ML user would say are present ("protein embeddings", "ESM-2", "mutation effect scoring", "contact prediction", "per-residue"), but a few common variants are missing ("protein language model", "sequence embeddings", ".fasta"). Above the good-keyword-coverage anchor of 4 but not the comprehensive-with-synonyms/extensions anchor of 5.

4 / 5

Distinctiveness Conflict Risk

The niche (ESM-2 protein embedding via fair-esm) is distinct with clear triggers, but the ecosystem contains the closely related Biohub `esm` fork covered by the sibling `esmfold2` skill — a genuine import-namespace collision the body explicitly disambiguates, and a user saying just "ESM" could match either. Fits "mostly distinct; minor overlap risk with closely related skills" rather than the minimal-risk anchor of 5.

4 / 5

Total

18

/

20

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 — 13 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

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

Warning

Total

13

/

16

Passed

Repository
aipoch/open-science
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.