Skip to content
Proteomics & immunologylatest-release

epitopeprediction

nf-core/epitopeprediction

A fully reproducible and state of the art epitope prediction pipeline.

version3.2.0e637bc7c49Oct 15, 2026 Upstream Usage docs

Key tools

MultiQCBCFtoolsEnsembl VEPpVACtoolsMHCflurryMHCnuggetsNetMHC-4.0NetMHCpan-4.0NetMHCpan-4.1NetMHCII-2.3NetMHCIIpan-4.0MixMHCpred-3.0MixMHC2pred-2.0

Run it

nfclaw
nfclaw run epitopeprediction --input samplesheet.csv --outdir results -profile docker
raw nextflow
nextflow run pipelines/epitopeprediction/upstream -profile docker --input samplesheet.csv --outdir results
demo · bundled test profile
nfclaw run epitopeprediction --demo --outdir results # adds the upstream test profile (-profile test,docker)

Inputs

columntyperequiredallowed valuesconstraints
sampleinteger or stringyes
allelesstringyes
mhc_classstringyesmatches ^(I|II)$
filenamestring (file path)yesmatches ^\S+\.(vcf|vcf.gz|tsv|fasta|fa)$
germline_vcfstring (file path)nomatches ^\S+\.vcf(\.gz)?$
tumor_samplestringnomatches ^\S+$

The samplesheet is a CSV with this header (the columns the schema requires); fill each value per the table above and reference.md (no example value is invented here):

csv
sample,alleles,mhc_class,filename

Any of the optional columns above may be appended to the header when your data needs them: germline_vcf, tumor_sample.

From data files. --input may also be the data files — a directory (searched recursively), a quoted glob, or files (--input once per file) — from which nfclaw writes this samplesheet: sample from file names; filename, germline_vcf from files matching their patterns, by sample name. Set the required columns no file determines with --sheet-set COLUMN=VALUE (a constant or a {sample}/{lane} template): alleles (string); mhc_class (matching ^(I|II)$). Preview it with --check; a run records it in <outdir>/provenance/ for replay.

Resources

Resource requests follow the pipeline's configs and selected profiles. nf-core's resource labels often assume a server — a single step can request far more memory than a workstation has, and retry rules can increase requests. If a run fails with Process requirement exceeds available memory (or CPUs), cap every request, and every retry, at what this machine actually has:

bash
nfclaw run epitopeprediction --input samplesheet.csv --outdir results -profile docker \
--limit-cpus 4 --limit-memory 15.GB

nfclaw turns those into Nextflow's process.resourceLimits and passes them as a -c config — the mechanism nf-core prescribes for exactly this (docs). Set them to the machine's real capacity. --limit-time DURATION also caps how long any one task may run: a task that needs longer is stopped, and so is every retry, so set it only as a deliberate ceiling, never as a guess at how long the analysis takes. The generated config is kept in <outdir>/provenance/, so commands.sh replays the run under the same ceiling.

Nextflow engine

This release declares nextflowVersion = '!>=25.10.4'.

To pin this release's declared minimum engine — useful when a newer Nextflow has incompatible config parsing:

bash
nfclaw run epitopeprediction ... --nxf-ver 25.10.4

--nxf-ver is recorded in <outdir>/provenance/, so the replay uses the same engine. See known-issues.

Demo

bash
nfclaw run epitopeprediction --demo --outdir results # adds the upstream test profile (-profile test,docker)
<!-- Generated from nf-core/epitopeprediction@e637bc7c49e6e05a09f5207501a142ec68d8570b. Do not edit by hand. -->

Samplesheet

A CSV with this header (the columns the schema requires). Fill each value per the constraints below; optional columns from the table may be appended.

samplesheet.csv header
sample,alleles,mhc_class,filename
ColumnTypeRequiredAllowed / constraints
sampleinteger or stringrequired—
allelesstringrequired—
mhc_classstringrequiredmatches ^(I|II)$
filenamestring (file path)requiredmatches ^\S+\.(vcf|vcf.gz|tsv|fasta|fa)$
germline_vcfstring (file path)optionalmatches ^\S+\.vcf(\.gz)?$
tumor_samplestringoptionalmatches ^\S+$

Required parameters

--inputstring (file path)

Path to comma-separated file containing information about the samples in the experiment.

--outdirstring (directory path)

The output directory where the results will be saved. You have to use absolute paths to storage on Cloud infrastructure.

Parameter explorer

49 parameters · 7 groups

Every parameter from the pinned nextflow_schema.json. nfclaw checks explicit values before launch; complex rules use the pinned pipeline's runtime validation. Search, filter by group, and expand any parameter for its default, allowed values and constraints.

30 parameters · 19 hidden

External Software3

Confirm that you have read the MixMHCpred and MixMHC2pred licenses and use them for academic non-commercial research only.

To use the 'netmhciipan' tool, specify the path to the original Linux software tarball for NetMHCIIpan 4.3 here.

To use the 'netmhcpan' tool, specify the path to the original Linux software tarball for NetMHCpan 4.2 here.

Generic options4

Display the help message.

Display the full detailed help message.

Custom MultiQC yaml file containing HTML including a methods description.

Display hidden parameters in the help message (only works when --help or --help_full are provided).

Input Output options4

Email address for completion summary.

Path to comma-separated file containing information about the samples in the experiment.

MultiQC report title. Printed as page header, used for filename if not otherwise specified.

The output directory where the results will be saved. You have to use absolute paths to storage on Cloud infrastructure.

Peptide Prediction options11

Filter out non-binders from the final results.

Specifies the maximum peptide length for MHC class I peptides.

Specifies the maximum peptide length for MHC class II peptides.

Specifies the minimum peptide length for MHC class I peptides.

Specifies the minimum peptide length for MHC class II peptides.

Number of amino acids flanking the mutation on each side in the published variant protein FASTA (variant_fasta/); frameshifts run to the new stop.

Specifies the column name in the input file that contains the peptide sequences.

Optional reference proteome FASTA for self-filtering variant peptides.

Specifies the prediction tool(s) to use.

Specifies that the output file will be in wide format.

Also predict the wild-type counterparts of variant peptides.

Reference options6

Reference genome FASTA matching the build (Ensembl primary assembly, contigs 1..MT), plain or bgzipped, with a .fai (and .gzi) index alongside. Required for variant (VCF) input unless --vep_download_cache is set.

Path to the VEP offline Ensembl cache. Either the cache directory or a .tar.gz of it. Required for variant input unless --vep_download_cache is set.

VEP cache version, matching the downloaded cache (e.g. 116). Required for variant input.

Download the VEP cache and reference FASTA in-pipeline instead of providing --vep_cache/--ref_fasta.

VEP assembly, matching the cache (e.g. GRCh38, GRCm39). Required for variant input.

VEP species, matching the cache (e.g. homo_sapiens, mus_musculus). Required for variant input.

Run Optimisation2

Specifies the maximum number of peptide chunks.

Specifies the minimum number of peptides that should be written into one chunk.

Outputs

Results land in --outdir; the files and directory layout depend on the selected workflow, parameters and publication settings. Run metadata is normally placed in <outdir>/pipeline_info/ (execution report, software versions), when those outputs are enabled. The pinned tree includes MultiQC support; a report is produced only when its workflow step runs. nfclaw run also writes <outdir>/provenance/ with the exact params file and the run log, <outdir>/provenance/logs/run.log — the whole launch, whose last line states the outcome (Nextflow's own log is <outdir>/.nextflow.log); unless --no-provenance it adds a run manifest (pinned version, commit and exact command), input/output SHA-256 checksums, and a replayable commands.sh. The exact output files and directory layout for this release are documented upstream: github.com/nf-core/epitopeprediction/blob/3.2.0/docs/output.md Check a run — in the foreground or the background — with nfclaw status <outdir>: success, still running, how it ended (with the error), or stopped without an outcome; exit 0 success, 3 running, 1 otherwise.