Skip to main content

nextflow lint

Lint Nextflow scripts and config files.

Usage​

$ nextflow lint [options] [paths]

Description​

The lint command parses and analyzes the given Nextflow scripts and config files, formats them if you specify -format, and prints any errors. It scans directories recursively for scripts and config files to lint.

Options​

-exclude​

File pattern to exclude from linting (default: .git, .lineage, .nextflow, .nf-test, nf-test.config, work).

Can be specified multiple times.

-files-from​
Added in version 26.04

Read list of paths to lint from a text file. Use - to read from standard input.

-format​

Format scripts and config files that have no errors.

-o, -output​

Output mode for reporting errors: full, extended, concise, json, markdown (default: full).

-project-dir​
Added in version 26.04

Path to project directory (default: '.'). Used to locate project-level assets such as the lib directory and modules directory.

-sort-declarations​

Sort script declarations in Nextflow scripts (default: false).

-spaces​

Number of spaces to indent (default: 4).

-tabs​

Indent with tabs (default: false).

Examples​

Lint a specific file:

$ nextflow lint main.nf

Lint all files in the current directory (and subdirectories) with concise output:

$ nextflow lint -o concise .

Lint and format all files in the current directory (and subdirectories) and use two spaces per indent:

$ nextflow lint -format -spaces 2 .
note

Formatting code with the lint command in Nextflow 25.10 or later may make your code incompatible with previous versions of Nextflow. If you need your code to remain compatible with versions prior to 25.10, run the formatter with Nextflow 25.04:

NXF_VER=25.04.8 nextflow lint -format .