Query and annotate gene variants from ClinVar and dbSNP databases. \n\.
48
51%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./scientific-skills/Evidence Insight/variant-annotation/SKILL.mdQuery and interpret gene variant clinical significance from ClinVar and dbSNP databases with ACMG guideline support.
scripts/main.py.references/ for task-specific guidance.See ## Prerequisites above for related details.
Python: 3.10+. Repository baseline for current packaged skills.dataclasses: unspecified. Declared in requirements.txt.See ## Usage above for related details.
cd "20260318/scientific-skills/Evidence Insight/variant-annotation"
python -m py_compile scripts/main.py
python scripts/main.py --helpExample run plan:
CONFIG block or documented parameters if the script uses fixed settings.python scripts/main.py with the validated inputs.See ## Workflow above for related details.
scripts/main.py.references/ contains supporting rules, prompts, or checklists.Use this command to verify that the packaged script entry point can be parsed before deeper execution.
python -m py_compile scripts/main.pyUse these concrete commands for validation. They are intentionally self-contained and avoid placeholder paths.
python -m py_compile scripts/main.py
python scripts/main.py --helpProvide comprehensive variant annotation including:
| Format | Example | Description |
|---|---|---|
| rsID | rs80357410 | dbSNP reference SNP ID |
| HGVS cDNA | NM_007294.3:c.5096G>A | Coding DNA change |
| HGVS Protein | NP_009225.1:p.Arg1699Gln | Protein change |
| HGVS Genomic | NC_000017.11:g.43094692G>A | Genomic coordinate |
| VCF-style | chr17:43094692:G>A | Chromosome:position:ref>alt |
| Gene:AA | BRCA1:R1699Q | Gene with amino acid change |
from scripts.main import VariantAnnotator
# Initialize annotator
annotator = VariantAnnotator()
# Query by rsID
result = annotator.query_variant("rs80357410")
# Query by HGVS notation
result = annotator.query_variant("NM_007294.3:c.5096G>A")
# Query by genomic coordinate
result = annotator.query_variant("chr17:43094692:G>A")
# Batch query
results = annotator.batch_query(["rs80357410", "rs28897696", "rs11571658"])# Single variant query
python scripts/main.py --variant rs80357410
# HGVS notation
python scripts/main.py --variant "NM_007294.3:c.5096G>A"
# Genomic coordinate
python scripts/main.py --variant "chr17:43094692:G>A"
# Batch from file
python scripts/main.py --file variants.txt --output results.json
# With output format
python scripts/main.py --variant rs80357410 --format json{
"variant_id": "rs80357410",
"gene": "BRCA1",
"chromosome": "17",
"position": 43094692,
"ref_allele": "G",
"alt_allele": "A",
"hgvs_genomic": "NC_000017.11:g.43094692G>A",
"hgvs_cdna": "NM_007294.3:c.5096G>A",
"hgvs_protein": "NP_009225.1:p.Arg1699Gln",
"clinical_significance": {
"clinvar": "Pathogenic",
"acmg_classification": "Pathogenic",
"acmg_criteria": ["PS4", "PM1", "PM2", "PP2", "PP3", "PP5"],
"acmg_score": 13.0,
"review_status": "criteria provided, multiple submitters, no conflicts"
},
"disease_associations": [
{
"disease": "Breast-ovarian cancer, familial 1",
"medgen_id": "C2676676",
"significance": "Pathogenic"
}
],
"population_frequencies": {
"gnomAD_genome_all": 0.000008,
"gnomAD_exome_all": 0.000012,
"1000G_all": 0.0
},
"functional_predictions": {
"sift": "deleterious",
"polyphen2": "probably_damaging",
"cadd_score": 24.5,
"mutation_taster": "disease_causing"
},
"literature_count": 42,
"last_evaluated": "2023-12-15",
"interpretation_summary": "This variant (BRCA1 p.Arg1699Gln) is classified as Pathogenic based on ACMG guidelines. It shows strong evidence of pathogenicity including population data (extremely rare), computational predictions (deleterious), and strong clinical significance (established association with hereditary breast-ovarian cancer)."
}The annotator implements the ACMG/AMP guidelines for variant interpretation:
| Classification | Score Range |
|---|---|
| Pathogenic | ≥ 10 |
| Likely Pathogenic | 6-9 |
| Uncertain Significance | 0-5 |
| Likely Benign | -5 to -1 |
| Benign | ≤ -6 |
⚠️ AI independent acceptance status: manual inspection required This skill requires:
| Database | Data Type | API/Access |
|---|---|---|
| ClinVar | Clinical significance, disease associations | NCBI E-utilities |
| dbSNP | SNP data, allele frequencies | NCBI E-utilities |
| gnomAD | Population frequencies | gnomAD API |
| Ensembl VEP | Functional predictions | REST API |
| CADD | Deleteriousness scores | REST API |
See references/ for:
⚠️ IMPORTANT: This tool is for research and educational purposes only. Variant interpretations are computational predictions and should not be used as the sole basis for clinical decisions. Always consult certified genetic counselors and clinical laboratories for diagnostic purposes. ACMG classifications in this tool are algorithmic estimates and may differ from expert panel reviews.
| Risk Indicator | Assessment | Level |
|---|---|---|
| Code Execution | Python scripts with tools | High |
| Network Access | External API calls | High |
| File System Access | Read/write data | Medium |
| Instruction Tampering | Standard prompt guidelines | Low |
| Data Exposure | Data handled securely | Medium |
# Python dependencies
pip install -r requirements.txt| Parameter | Type | Default | Description |
|---|---|---|---|
--variant | str | Required | |
--file | str | Required | |
--output | str | Required | |
--format | str | "json" | |
--api-key | str | Required | NCBI API key for increased rate limits |
--delay | float | 0.34 |
Every final response should make these items explicit when they are relevant:
scripts/main.py fails, report the failure point, summarize what still can be completed safely, and provide a manual fallback.This skill accepts requests that match the documented purpose of variant-annotation and include enough context to complete the workflow safely.
Do not continue the workflow when the request is out of scope, missing a critical input, or would require unsupported assumptions. Instead respond:
variant-annotationonly handles its documented workflow. Please provide the missing required inputs or switch to a more suitable skill.
Use the following fixed structure for non-trivial requests:
If the request is simple, you may compress the structure, but still keep assumptions and limits explicit when they affect correctness.
63c61d3
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.