AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Gsea

skill-aipoch-medical-research-skills-gsea · by aipoch

Run GSEA on a ranked gene list and produce the enrichment table, running-score table, and enrichment plots.

No reviews yet
0 installs
7 views
0.0% view→install

Install

$ agentstack add skill-aipoch-medical-research-skills-gsea

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-aipoch-medical-research-skills-gsea)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Gsea? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

> Source: https://github.com/aipoch/medical-research-skills

When to read external files

| Situation | Read | Purpose | |---|---|---| | Need algorithm details | references/algorithm.md | Statistical method and formulas | | Need to run an analysis | scripts/main.R | Full command reference | | Hit an error | references/troubleshooting.md | Look up error codes and fixes | | Need CLI examples | references/cli-guide.md | Worked argument examples |

Scope

Use this skill for:

  • Running GSEA on a gene list ranked by a statistic
  • Generating enrichment curve plots from existing enrichGSEA.csv and gsea_running_scores.csv
  • Smoke-testing the pipeline with tests/data/sample_deg_results.csv

Do not use it for:

  • Differential expression on raw expression matrices
  • Single-sample ssGSEA
  • Network analysis or multi-omics integration

Usage

Analysis mode: Rscript scripts/main.R --input tests/data/sample_deg_results.csv --outdir ./GSEA_analysis --type KEGG --species human --seed 42 --timeout 300

Plot mode: Rscript scripts/main.R --running_file ./GSEA_analysis/Table/gsea_running_scores.csv --enrich_file ./GSEA_analysis/Table/enrichGSEA.csv --plot_output ./GSEA_analysis/plot/gsea_plot.pdf --top_n 5 --plot_format pdf --seed 42 --timeout 300

See references/cli-guide.md for more.

Mode selection:

  • Passing only --input runs analysis mode
  • Passing both --running_file and --enrich_file runs plot mode
  • If both sets of arguments are provided, plot mode takes precedence; analysis mode is skipped and a warning is logged

Arguments

Analysis-mode arguments

| Short | Long | Type | Default | Required | Description | |---|---|---|---|---|---| | -i | --input | character | NULL | yes | Input CSV file | | -o | --outdir | character | GSEA_analysis | no | Output directory | | -g | --gene_col | character | name | no | Gene column name | | -f | --fc_col | character | logFC | no | Ranking-statistic column name | | -t | --type | character | KEGG | no | Gene-set type: KEGG, HALLMARKS, GO_BP, GO_MF, GO_CC. With a preloaded RDS, HALLMARKS is automatically mapped to the asset key Hallmarks | | -s | --species | character | human | no | Species: human, mouse, rat | | -p | --pvalue_cutoff | numeric | 0.05 | no | Significance threshold | | -m | --method | character | fgsea | no | GSEA backend: fgsea or DOSE | | -c | --chunk_size | numeric | 1000 | no | Chunk size for large gene-set conversion | | -r | --rds_path | character | NULL | no | Path to a pre-stored gene-set RDS | | -v | --verbose | logical | FALSE | no | Verbose logging | | | --seed | integer | 42 | no | Random seed | | | --timeout | integer | 300 | no | Timeout in seconds; <=0 disables it | | -h | --help | logical | FALSE | no | Show help |

Plot-mode arguments

| Short | Long | Type | Default | Required | Description | |---|---|---|---|---|---| | | --running_file | character | NULL | yes | Path to gsea_running_scores.csv | | | --enrich_file | character | NULL | yes | Path to enrichGSEA.csv | | | --plot_output | character | gsea_plot.pdf | no | Output plot path | | | --plot_width | numeric | 8 | no | Plot width | | | --plot_height | numeric | 6 | no | Plot height | | | --plot_format | character | pdf | no | Output format: pdf or png | | | --top_n | numeric | 1 | no | Number of top pathways to plot when geneSetID is not given | | | --rank_by | character | p.adjust | no | Column used to rank pathways | | | --geneSetID | character | "" | no | Comma-separated pathway IDs | | | --plot_title | character | "" | no | Plot title | | | --colors | character | #4DBBD5,#E64B35,#00A087,#F39B7F,#3C5488,#8491B4 | no | Color list | | | --base_size | numeric | 11 | no | Base font size | | | --subplots | character | 1,2,3 | no | Sub-panel indices to display | | | --rel_heights | character | 1.5,0.8,1 | no | Relative panel heights | | | --NES_table | logical | TRUE | no | Show NES annotation | | | --no_NES_table | logical | FALSE | no | Disable NES annotation | | | --NES_label_size | numeric | 4 | no | NES label font size | | | --NES_label_x | numeric | 0.75 | no | NES label x position | | | --NES_label_y | numeric | 0.75 | no | NES label y position | | | --NES_label_color | character | black | no | NES label color | | | --NES_label_hjust | numeric | 0 | no | NES label horizontal justification | | | --NES_label_vjust | numeric | 1 | no | NES label vertical justification | | | --line_width | numeric | 1 | no | ES line width | | | --dot_size | numeric | 1.2 | no | ES dot size | | | --legend_position | character | auto | no | Legend position | | | --legend_x | numeric | 0.02 | no | Inset legend x coordinate | | | --legend_y | numeric | 0.02 | no | Inset legend y coordinate | | | --legend_just_x | numeric | 0 | no | Legend horizontal justification | | | --legend_just_y | numeric | 0 | no | Legend vertical justification | | | --legend_text_size | numeric | 9 | no | Legend text size | | | --legend_key_size | numeric | 0.6 | no | Legend key size | | | --legend_bg_alpha | numeric | 0 | no | Legend background alpha | | | --grid_major_color | character | grey92 | no | Major grid color | | | --grid_minor_color | character | grey92 | no | Minor grid color | | | --ylab_es | character | Enrichment Score | no | ES panel y-axis title | | | --ylab_rank | character | Ranked List Metric | no | Rank panel y-axis title | | | --xlab_rank | character | Rank in Ordered Dataset | no | Rank panel x-axis title | | | --hit_height | numeric | 1 | no | Hit-bar height | | | --hit_gap | numeric | 0 | no | Hit-bar gap | | | --hit_linewidth | numeric | 0.5 | no | Hit-bar line width | | | --rank_bar_alpha | numeric | 0.9 | no | Rank-bar alpha | | | --rank_bar_height_ratio | numeric | 0.3 | no | Rank-bar height ratio | | | --rank_metric_segment_color | character | grey | no | Rank-line color | | | --rank_metric_segment_width | numeric | 0.3 | no | Rank-line width | | | --rank_metric_segment_alpha | numeric | 1 | no | Rank-line alpha | | | --pvalue_table | logical | FALSE | no | Show p-value table | | | --ES_geom | character | line | no | ES geometry: line or dot | | | --verbose | logical | FALSE | no | Verbose logging | | | --seed | integer | 42 | no | Random seed | | | --timeout | integer | 300 | no | Timeout in seconds; <=0 disables it | | -h | --help | logical | FALSE | no | Show help |

Input format

Analysis-mode input is a CSV with at least:

  • a gene column (default name name)
  • a ranking-statistic column (default name logFC)

Example:

name,logFC,pvalue,padj
TP53,2.5,0.001,0.01
BRCA1,1.8,0.005,0.02
EGFR,-1.2,0.01,0.05

Value constraints:

  • type accepts KEGG, HALLMARKS, GO_BP, GO_MF, GO_CC
  • When using a preloaded RDS, HALLMARKS is automatically matched to the asset key Hallmarks
  • species accepts human, mouse, rat

Output files

| File | Format | Description | |---|---|---| | data/GSEA_list.rda | RDA | Full GSEA result object | | Table/enrichGSEA.csv | CSV | Enrichment result table | | Table/gsea_running_scores.csv | CSV | Running-score table; if no enrichment passes, a header-only file is still written | | plot/ | directory | Plot output directory | | session_info.txt | TXT | R version and package versions |

enrichGSEA.csv mainly contains: ID, Description, NES, pvalue, p.adjust, core_enrichment.

Error handling

Common error codes:

  • SKILL_FILE_NOT_FOUND: input file does not exist
  • SKILL_MISSING_COLUMNS: required columns are missing
  • SKILL_EMPTY_DATA: input is empty, or empty after filtering
  • SKILL_INVALID_PARAMETER: an argument has an invalid value
  • SKILL_PACKAGE_NOT_FOUND: a required package is not installed
  • SKILL_ANALYSIS_FAILED: GSEA still failed after retries

Triage doc: references/troubleshooting.md

Exit codes:

  • 0: success
  • 1: failure

Testing

Minimal test dataset: tests/data/sample_deg_results.csv

Minimal command: Rscript scripts/main.R --input tests/data/sample_deg_results.csv --outdir ./test_output --type KEGG --species human --seed 42 --timeout 300 --verbose

Expected output:

  • ./test_output/data/GSEA_list.rda
  • ./test_output/Table/enrichGSEA.csv
  • ./test_output/Table/gsea_running_scores.csv
  • ./test_output/session_info.txt
  • If no significant enrichment is found, gsea_running_scores.csv is still written but contains only the header
  • Exit code 0

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.