CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

medchem

Medicinal chemistry filters. Apply drug-likeness rules (Lipinski, Veber), PAINS filters, structural alerts, complexity metrics, for compound prioritization and library filtering.

58

Quality

73%

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

Fix and improve this skill with Tessl

tessl review fix ./backend/cli/skills/chemistry/medchem/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

61%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 well-structured, highly actionable API guide with real, runnable examples and verified bundle references. The main gaps are missing validation/verification steps in the batch filtering workflows (which cap workflow clarity), duplicated catalog/API detail that belongs in the reference files, and padded sections (When to Use, Best Practices, repeated imports) that inflate token cost.

Suggestions

Add validation checkpoints to the batch workflow patterns: check for None results from dm.to_mol on unparseable SMILES, verify combined result columns before writing, and log/review filtered-out compounds as the Best Practices section itself recommends.

Replace the inline 'Available Rules', 'Available Filters', 'Groups', and 'Catalogs' lists with a pointer to references/rules_catalog.md, and trim the per-module examples to one each since references/api_guide.md already covers signatures in depth.

Delete the 'When to Use This Skill' section (it duplicates the description) and consolidate the repeated `import medchem as mc` lines to cut roughly 30–40 lines of token overhead.

DimensionReasoningScore

Conciseness

The API-driven examples carry genuine value, but there is padding Claude doesn't need: a "When to Use This Skill" section that restates the description, `import medchem as mc` repeated in nearly every block, and a 7-item Best Practices section with advisory filler ("Don't blindly apply filters", "Use Parallelization... always use n_jobs=-1"). This matches "mostly efficient but includes some unnecessary explanation or could be tightened"; it is well above the verbose anchor of 2 but clearly not the lean 4–5 territory.

3 / 5

Actionability

Nearly every section gives copy-paste-ready code with real module paths (mc.rules.RuleFilters, mc.structural.CommonAlertsFilters, dm.to_mol) plus an executable CLI example for scripts/filter_molecules.py. Minor gaps keep it from 5: several snippets reference undefined variables (smiles_list, mol_list, candidate_mols), and result formats are described only loosely ("Results are returned as dictionaries...") without a concrete example.

4 / 5

Workflow Clarity

Three Workflow Patterns give a coherent load → filter → combine → save sequence, but the batch filtering workflows (the core use case) include no validation checkpoints: no handling of dm.to_mol returning None for invalid SMILES, no verification that output CSVs contain expected columns, no error-recovery loop. The judging guideline explicitly caps workflow clarity at 3 for batch operations without validation steps; the sequences are clearer than a score-2 'rough sequence' but the missing checkpoints rule out 4.

3 / 5

Progressive Disclosure

The body is well sectioned and the Resources section clearly signals one-level-deep references (references/api_guide.md, references/rules_catalog.md, scripts/filter_molecules.py — all verified to exist) with descriptions and a usage command. Not a 5 because the inline 'Available Rules/Filters/Groups/Catalogs' lists duplicate content that belongs in rules_catalog.md, and the eight-section inline API tour overlaps the 600-line api_guide.md; not a 3 because references are clearly signaled, not buried, and each section is a brief example rather than a wall of reference material.

4 / 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 specific, well-scoped description with concrete named capabilities and strong domain trigger terms. Its main weakness is the absence of any explicit 'when to use' guidance, which caps completeness and leaves invocation to inference.

Suggestions

Append an explicit trigger clause, e.g. "Use when filtering compound libraries, checking molecules for PAINS or structural alerts, or prioritizing hits/leads by drug-likeness."

Add commonly used synonyms/extensions such as "SMILES", "compound library", and "lead optimization" to broaden natural keyword coverage.

Consider naming the underlying library (medchem) so users referencing the tool by name can trigger the skill.

DimensionReasoningScore

Specificity

The description enumerates multiple concrete actions — "Apply drug-likeness rules (Lipinski, Veber), PAINS filters, structural alerts, complexity metrics, for compound prioritization and library filtering" — covering the library's main capabilities comprehensively. It matches the anchor for listing multiple specific concrete actions with comprehensive coverage; nothing here is generic filler.

5 / 5

Completeness

The "what" is clear and concrete, but there is no "Use when..." clause or equivalent explicit trigger guidance, so "when" is only weakly implied by the capability list. Per the judging guideline, a missing 'Use when...' clause caps completeness at 3.

3 / 5

Trigger Term Quality

Strong domain keywords users would naturally say: "Lipinski", "Veber", "PAINS", "drug-likeness", "structural alerts", "compound prioritization", "library filtering". A few natural terms are missing (e.g., "SMILES", "molecules", "compound library", "lead optimization"), placing it just below the comprehensive-synonyms anchor.

4 / 5

Distinctiveness Conflict Risk

"Medicinal chemistry filters" with named rules (Lipinski, Veber, PAINS) carves out a clear niche with distinct triggers and minimal overlap risk against generic chemistry or data-processing skills. Not below 4: it is more specific than "works with PDF and Word document files"-style overlap cases.

5 / 5

Total

17

/

20

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.

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

frontmatter_unknown_keys

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

Warning

Total

14

/

16

Passed

Repository

synthetic-sciences/openscience

Path

backend/cli/skills/chemistry/medchem/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.