GSEA and over-representation analysis (ORA) for RNA-seq and proteomics. Wraps Enrichr for ORA against MSigDB, KEGG, GO, and 200+ databases; runs preranked GSEA on ranked DE gene lists. Outputs enrichment tables and running-score plots. Use after DESeq2 or edgeR for pathway-level interpretation.
SkillScore82Maintained
Automatic
◆Research pack
Last verified 9/3/2026
What it changes
Passed 18 of 22 test cases with the skill, and 17 of 22 without it.
Without skill77%
With skill82%
Checks it passed that the model alone missed
Specifies 1000 permutations for publication quality
1 fixed17 passed either way4 still failing0 broke
Pass-rate lift
+5 pp
Tokens
+233%
Agent turns
0%
Response time
-16%
Model gemini-3.6-flashMeasured 9/3/2026v2 · latest is v318 of 22 cases passed with skill
Tokens, turns and time describe resource use, not a dollar price.
This benchmark measured an earlier version of the skill.
See it in action
A test case the skill fixed. Same model, same prompt, with and without the skill.
Prompt
When running `gp.prerank` for publication-ready results, how many random permutations (`permutation_num`) should be set for calculating empirical p-values?
What was checked, without and with the skill
Checked
Without skill
With skill
Specifies 1000 permutations for publication quality
Missed
Passed
case-10 · gemini-3.6-flash · 9/3/2026 · answers are capped and redacted
What's inside
The instructions your model reads when the skill loads.
SKILL.md409 linessingle file
GSEApy — Gene Set Enrichment Analysis in Python
Overview
GSEApy provides Python implementations of GSEA and over-representation analysis (ORA) for interpreting gene expression changes at the pathway level. The enrich module queries the Enrichr API to test a gene list against 200+ databases (GO, KEGG, MSigDB Hallmarks, Reactome, WikiPathways). The prerank and gsea modules run the GSEA algorithm on a pre-ranked gene list or expression matrix — computing normalized enrichment scores (NES) and FDR values for each gene set. GSEApy integrates directly with pandas DataFrames from DESeq2 or scanpy differential expression output, making it the standard Python tool for pathway analysis in RNA-seq workflows.
When to Use
Interpreting DESeq2 or edgeR differential expression results at pathway/GO-term level
Running fast ORA (over-representation analysis) against Enrichr's 200+ databases including GO, KEGG, and MSigDB Hallmarks
Performing GSEA prerank analysis on a log2-fold-change-ranked gene list without an expression matrix
Identifying enriched pathways in scRNA-seq cluster marker genes
Generating publication-ready enrichment dot plots and GSEA running-score plots
Use GSEA Java application for the official GUI-based analysis with full GSEA desktop interface
Use fgsea (R) as an alternative with fast permutation-based p-values; GSEApy is preferred for Python-native pipelines
Use omics-plotting SKILL after DE and for publication-quality plots of gsea results
Prerequisites
Python packages: gseapy, pandas, matplotlib
Internet access: enrich module queries the Enrichr API (requires connection)