ribomsqc
nf-core/ribomsqc
QC pipeline that monitors mass spectrometer performance in ribonucleoside analysis
Key tools
Run it
nfclaw run ribomsqc --input samplesheet.csv --outdir results --analytes-tsv <analytes_tsv> --analyte <analyte> -profile dockernextflow run pipelines/ribomsqc/upstream -profile docker --input samplesheet.csv --outdir results --analytes_tsv <analytes_tsv> --analyte <analyte>nfclaw run ribomsqc --demo --outdir results # adds the upstream test profile (-profile test,docker)Inputs
| column | type | required | allowed values | constraints |
|---|---|---|---|---|
id | string | yes | matches ^\S+$ | |
raw_file | string (file path) | yes | matches ^\S+\.raw$ |
--input must match ^\S+\.csv$.
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):
id,raw_fileFrom 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: id from file names; raw_file from files matching their patterns, by sample name. Set other columns with --sheet-set COLUMN=VALUE. 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:
nfclaw run ribomsqc --input samplesheet.csv --outdir results --analytes-tsv <analytes_tsv> --analyte <analyte> -profile docker \ --limit-cpus 4 --limit-memory 15.GBnfclaw 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.04.0'.
To pin this release's declared minimum engine — useful when a newer Nextflow has incompatible config parsing:
nfclaw run ribomsqc ... --nxf-ver 25.04.0--nxf-ver is recorded in <outdir>/provenance/, so the replay uses the same engine. See known-issues.
Demo
nfclaw run ribomsqc --demo --outdir results # adds the upstream test profile (-profile test,docker)Samplesheet
A CSV with this header (the columns the schema requires). Fill each value per the constraints below.
id,raw_file| Column | Type | Required | Allowed / constraints |
|---|---|---|---|
id | string | required | matches ^\S+$ |
raw_file | string (file path) | required | matches ^\S+\.raw$ |
Required parameters
--inputstring (file path)Path to a comma-separated file (CSV) listing samples to process. Must contain a header with two columns: 'id' (sample identifier) and 'raw_file' (full path to the corresponding RAW file). You may specify one or multiple samples for batch processing.
Constraint · matches ^\S+\.csv$
--outdirstring (directory path)Directory where the pipeline will write its output. If a relative folder name is used (e.g., 'results'), it will be created in the current working directory. If an absolute path is given (e.g., '/path/to/output'), the folder will be created at that specific location.
--analytes-tsvstring (file path)Path to a tab-separated values (TSV) file describing the analytes for chromatographic peak extraction. Must include columns: short_name, long_name, mz_M0 (required), and optionally mz_M1, mz_M2, ms2_mz, and rt_teoretical (required). Only mz_M0 and rt_teoretical are mandatory. mz_M1 and mz_M2 are reserved for future support of isotopic envelope integration.
Constraint · matches ^\S+\.tsv$
--analytestringShort name of the analyte to be extracted, as defined in the 'short_name' column of the TSV file. Use a specific value such as 'm3C' to process one analyte, or use 'all' to process all analytes defined in the TSV file.
--rt-toleranceintegerTime window (in seconds) around the theoretical retention time in which peaks will be searched. The window is defined as RT ± tolerance.
--mz-toleranceintegerTolerance in parts-per-million (ppm) around the specified precursor m/z value (mz_M0) for XIC extraction. The window is defined as mz_M0 ± tolerance.
--ms-levelintegerMS level to extract chromatographic peaks from. Set to 1 for MS1 or 2 for MS2.
Parameter explorer
31 parameters · 4 groupsEvery 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.
14 parameters · 17 hidden
Generic options3
Display the help message.
Display the full detailed help message.
Display hidden parameters in the help message (only works when --help or --help_full are provided).
Input Output options2
Path to a comma-separated file (CSV) listing samples to process. Must contain a header with two columns: 'id' (sample identifier) and 'raw_file' (full path to the corresponding RAW file). You may specify one or multiple samples for batch processing.
Directory where the pipeline will write its output. If a relative folder name is used (e.g., 'results'), it will be created in the current working directory. If an absolute path is given (e.g., '/path/to/output'), the folder will be created at that specific location.
Xic Parameters9
Short name of the analyte to be extracted, as defined in the 'short_name' column of the TSV file. Use a specific value such as 'm3C' to process one analyte, or use 'all' to process all analytes defined in the TSV file.
Path to a tab-separated values (TSV) file describing the analytes for chromatographic peak extraction. Must include columns: short_name, long_name, mz_M0 (required), and optionally mz_M1, mz_M2, ms2_mz, and rt_teoretical (required). Only mz_M0 and rt_teoretical are mandatory. mz_M1 and mz_M2 are reserved for future support of isotopic envelope integration.
MS level to extract chromatographic peaks from. Set to 1 for MS1 or 2 for MS2.
Tolerance in parts-per-million (ppm) around the specified precursor m/z value (mz_M0) for XIC extraction. The window is defined as mz_M0 ± tolerance.
Whether to generate an additional TSV file accumulating the XIC extraction results. If set to true, the output will include a progressively updated results table based on the original input analytes TSV.
Output file name for the XIC PDF plot
Whether to plot MS1 XICs
Whether to plot MS2 XICs
Time window (in seconds) around the theoretical retention time in which peaks will be searched. The window is defined as RT ± tolerance.
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/ribomsqc/blob/v1.0.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.