agentsclimarketplace

Omics dataset retrieval

Skill hossainlab/omics-skills/skills/omics-dataset-retrieval

Systematically retrieve, deduplicate, classify, and relevance-audit publicly available omics datasets for a user-specified disease, phenotype, gene, or biological process. Covers all major omics types (transcriptomics, proteomics, metabolomics, epigenomics, genomics, single-cell, spatial, lipidomics, multi-omics) across the broadest set of public repositories (GEO, SRA, ArrayExpress, PRIDE, OmicsDI, CELLxGENE, GDC/TCGA, ENCODE, and 20+ more). Use when the user asks to find, survey, catalog, or map available omics/sequencing datasets for a topic. Does NOT download raw data or run downstream analysis.From its SKILL.md

Install
npx -y skills add hossainlab/omics-skills --skill omics-dataset-retrieval

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 23 days oldThe repository was created 23 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

8.4 KB, ~2.1k tokens by cl100k_base, as published. Nobody here has run it

Omics Dataset Retrieval

Build a deduplicated, relevance-audited catalog of public omics datasets for a disease, phenotype, gene, or biological process. Query every reachable public repository, classify each hit by omics type, score its relevance, and emit a CSV catalog + Markdown summary (+ optional landscape figure).

Boundary: catalog metadata only. This skill does not download raw data files and does not perform downstream analysis.

Worked examples (Alzheimer's, BCL11A/erythroid, PDAC) are in references/examples.md.

Inputs

ParameterTypeDescription
disease_or_topicstringDisease, phenotype, gene, or process (e.g. "sickle cell disease", "BCL11A")
synonymslist[str]Alternative names, abbreviations, gene symbols (e.g. ["SCD","SCA","HbSS"])
omics_typeslist[str] or "all"Restrict to omics types, or "all" (default)
organismstring"all" (default) — human, mouse, and all others. Restrict to "human"/"mouse" only if explicitly requested
year_minintEarliest publication year (default: no limit)
output_dirpathWhere to write outputs (default: /mnt/results/)

Outputs

FileDescription
<disease>_omics_datasets_MASTER.csvFull catalog with all metadata + relevance labels
<disease>_omics_datasets_VALIDATED.csvFiltered to CORE/DIRECT + ADJACENT only
<disease>_omics_summary.mdCounts by omics type / repository, top datasets, limitations
<disease>_omics_landscape.pngOptional overview: donut + repository bar + timeline

Workflow

Step 1 — Ask clarification questions (MANDATORY before any search)

Not optional. Before querying, use AskUserQuestion to collect the items below in a single call. Skip only questions already answered in the user's initial message; always ask the rest. Answers materially change which repositories run, result counts, and relevance tuning.

  • Q1 Disease/topic — name; synonyms/abbreviations (more = better recall); key genes/pathways (drive extra targeted GEO queries).
  • Q2 Omics types — all (default) / transcriptomics only / epigenomics only / proteomics+metabolomics only / custom.
  • Q3 Organism — all (default) / human only / specific species.
  • Q4 Year range — no restriction (default) / recent only / custom.
  • Q5 Controlled-access repos (dbGaP, EGA, JGA) — include+flag (default) / open-access only.
  • Q6 Goal — browse & select (default) / landscape overview (figure) / download & analyze (add links) / all.
  • Q7 Tissue/cell-type focus (optional, big recall boost) — e.g. "whole blood", "brain cortex", "CD34+ HSCs". Added as targeted terms.

Proceed to Step 2 only once answers collected.

Step 2 — Build search term matrix

Combine: primary name + synonyms × omics-type terms × tissue/cell terms × clinical-context terms (treatment, crisis, biomarker, pediatric, longitudinal) × key gene/pathway terms.

GEO syntax tips: "<disease>"[Title] for precision; [DataSet Type] for omics filtering; retmax=100 per query; run 20–40 queries; dedupe by GEO UID.

Step 3–12 — Query repositories

Work through all tiers in priority order — rare diseases often only have data in Tier 2/3. Full API base URLs, per-repository query code, and quirks are in the reference files:

  • references/repositories.md — Tier 1/2/3 coverage map + known API limitations + workarounds.
  • references/query-code.md — runnable query snippets per repository (GEO, SRA, ArrayExpress/BioStudies, PRIDE, jPOST, OmicsDI, Metabolomics Workbench, CELLxGENE, GDC/TCGA, ENCODE, Expression Atlas, Tier-3 web search).

Tier 1 (always query): GEO, SRA, ArrayExpress/BioStudies, PRIDE/ProteomeXchange, OmicsDI, CZ CELLxGENE, GDC/TCGA. Tier 2 (when relevant): ENCODE, Expression Atlas, HCA, Metabolomics Workbench, MetaboLights, MassIVE/GNPS, jPOST, iProX, cBioPortal, EpiRR/IHEC, HPA, ENA. Tier 3 (WebSearch tool): Zenodo, Figshare, Dryad, OSF, Harvard Dataverse, Synapse, ICGC, CPTAC, AWS Open Data, dbGaP/EGA/JGA (controlled), UK Biobank, FinnGen.

GEO is the primary source — run 20–40 targeted queries. Use OmicsDI as the single entry point for metabolomics (aggregates MetaboLights, MassIVE, GNPS, Metabolomics Workbench). Only query GDC/TCGA/CPTAC/cBioPortal for cancer topics; only ENCODE when the topic has epigenomic/regulatory components.

Step 13 — Classify omics type

Apply rule-based classify_omics() to each record. The GEO gdstype field is unreliable — always use Title + Summary as the primary signal (check single-cell/spatial before bulk RNA-seq; ArrayExpress labels arrays as "transcription profiling by array"). Function in references/classification.md.

Step 14 — Relevance audit (4 tiers)

Score each record with audit_relevance() using disease/weak/exclude keyword lists tuned per topic:

TierMeaningAction
CORE/DIRECTReal patient samples or validated disease modelPrimary catalog
ADJACENTMechanistically relevant, no patient dataInclude, flagged
WEAKEpidemiologically linked / tangentialInclude, flagged; user decides
REMOVEFalse positive, no disease connectionExclude — always manually review before deleting

Function + example keyword lists in references/classification.md.

Step 15 — Assemble master catalog

Concat all sources (list df_geo before df_biostudies so richer native GEO records win dedup). Deduplicate across repositories by normalizing accessions: E-GEOD-NNN → GSENNN, so GEO/ArrayExpress mirrors collapse while genuine ArrayExpress studies (E-MTAB-, E-MEXP-, E-TABM-) survive. Do NOT pre-filter E-GEOD- accessions at query time — that silently drops studies GEO missed. Backfill authoritative organism for CORE/ADJACENT ArrayExpress rows from /studies/{accession}. Add Access column (Controlled for dbGaP/EGA/JGA/UK Biobank/FinnGen). Sort by relevance tier then year desc. Assembly code in references/classification.md.

Step 16 — Markdown summary report

Write <disease>_omics_summary.md: overview (totals, repos searched, date); counts by repository; counts by omics type (CORE/DIRECT only); relevance breakdown; top datasets (largest N, most recent); controlled-access list with access instructions; coverage gaps and limitations (which APIs failed / need keys / are data-sparse for this topic).

Step 17 — Overview figure (if requested)

3-panel <disease>_omics_landscape.png — Panel A donut (CORE/DIRECT by omics type), Panel B horizontal bar (all by repository), Panel C stacked-bar timeline (datasets/year by omics type). After saving, verify render with Read(file_path=..., mode="media_output_check"). Plot boilerplate in references/query-code.md.

Key scientific caveats

  • GEO gdstype is unreliable — reclassify from Title + Summary. ChIP/ATAC/ Ribo-seq are often mislabeled; some RNA-seq mislabeled "Hi-C".
  • Cross-repository duplicates are common — same study in GEO + ArrayExpress + SRA + OmicsDI. Normalize E-GEOD-GSE before dedup (Step 15).
  • Relevance audit is keyword-based — produces false positives and negatives. Always manually review REMOVE candidates before excluding.
  • Controlled-access (dbGaP/EGA/JGA) — catalog and label Controlled; download needs institutional data-access agreements.
  • Metabolomics is data-sparse for rare diseases — check Metabolomics Workbench
    • HMDB disease pages manually if OmicsDI returns nothing.
  • CELLxGENE uses MONDO ontology — look up the correct MONDO ID before filtering cell metadata.
  • NCBI rate limits — 3 req/sec without key, 10 with. time.sleep(0.34) between calls; set api_key param to raise the limit.

What ships with it: 5 files

38.5 KB alongside SKILL.md, 1 of them executable

scripts/

Keep looking

Skills are one crate of 326,835. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.