nf-core 流程部署

在本地或公共测序数据上运行 nf-core 生物信息学流程。

目标用户: 没有专门生物信息学培训的实验室科学家和研究人员,他们需要运行大规模组学分析——差异表达、变异检测或染色质可及性分析。

工作流检查清单

- [ ] 第 0 步:获取数据(如果来自 GEO/SRA)
- [ ] 第 1 步:环境检查(必须通过)
- [ ] 第 2 步:选择流程(与用户确认)
- [ ] 第 3 步:运行测试配置(必须通过)
- [ ] 第 4 步:创建样本表
- [ ] 第 5 步:配置并运行(与用户确认基因组)
- [ ] 第 6 步:验证输出

第 0 步:获取数据(仅限 GEO/SRA)

如果用户有本地 FASTQ 文件,跳过此步骤。

对于公共数据集,首先从 GEO/SRA 获取。完整工作流参见 references/geo-sra-acquisition.md

快速开始:

# 1. 获取研究信息
python scripts/sra_geo_fetch.py info GSE110004

# 2. 下载(交互模式)
python scripts/sra_geo_fetch.py download GSE110004 -o ./fastq -i

# 3. 生成样本表
python scripts/sra_geo_fetch.py samplesheet GSE110004 --fastq-dir ./fastq -o samplesheet.csv

决策点: 获取研究信息后,与用户确认:

然后继续第 1 步。


第 1 步:环境检查

首先运行。环境不通过则流程会失败。

python scripts/check_environment.py

所有关键检查必须通过。如果任何一项失败,提供修复说明:

Docker 问题

问题 解决方案
未安装 https://docs.docker.com/get-docker/ 安装
权限被拒绝 sudo usermod -aG docker $USER 然后重新登录
守护进程未运行 sudo systemctl start docker

Nextflow 问题

问题 解决方案
未安装 `curl -s https://get.nextflow.io
版本 < 23.04 nextflow self-update

Java 问题

问题 解决方案
未安装 / < 11 sudo apt install openjdk-11-jdk

在全部检查通过之前不要继续。 对于 HPC/Singularity,参见 references/troubleshooting.md


第 2 步:选择流程

决策点:继续之前与用户确认。

数据类型 流程 版本 目标
RNA-seq rnaseq 3.22.2 基因表达
WGS/WES sarek 3.7.1 变异检测
ATAC-seq atacseq 2.1.2 染色质可及性

从数据自动检测:

python scripts/detect_data_type.py /path/to/data

流程特定详情:


第 3 步:运行测试配置

使用小数据验证环境。在真实数据上运行之前必须通过。

nextflow run nf-core/<pipeline> -r <version> -profile test,docker --outdir test_output
流程 命令
rnaseq nextflow run nf-core/rnaseq -r 3.22.2 -profile test,docker --outdir test_rnaseq
sarek nextflow run nf-core/sarek -r 3.7.1 -profile test,docker --outdir test_sarek
atacseq nextflow run nf-core/atacseq -r 2.1.2 -profile test,docker --outdir test_atacseq

验证:

ls test_output/multiqc/multiqc_report.html
grep "Pipeline completed successfully" .nextflow.log

如果测试失败,参见 references/troubleshooting.md


第 4 步:创建样本表

自动生成

python scripts/generate_samplesheet.py /path/to/data <pipeline> -o samplesheet.csv

脚本会:

对于 sarek: 如果无法自动检测,脚本会提示输入肿瘤/正常状态。

验证现有样本表

python scripts/generate_samplesheet.py --validate samplesheet.csv <pipeline>

样本表格式

rnaseq:

sample,fastq_1,fastq_2,strandedness
SAMPLE1,/abs/path/R1.fq.gz,/abs/path/R2.fq.gz,auto

sarek:

patient,sample,lane,fastq_1,fastq_2,status
patient1,tumor,L001,/abs/path/tumor_R1.fq.gz,/abs/path/tumor_R2.fq.gz,1
patient1,normal,L001,/abs/path/normal_R1.fq.gz,/abs/path/normal_R2.fq.gz,0

atacseq:

sample,fastq_1,fastq_2,replicate
CONTROL,/abs/path/ctrl_R1.fq.gz,/abs/path/ctrl_R2.fq.gz,1

第 5 步:配置并运行

5a. 检查基因组可用性

python scripts/manage_genomes.py check <genome>
# 如果未安装:
python scripts/manage_genomes.py download <genome>

常见基因组:GRCh38(人类)、GRCh37(旧版)、GRCm39(小鼠)、R64-1-1(酵母)、BDGP6(果蝇)

5b. 决策点

决策点:与用户确认:

  1. 基因组: 使用哪个参考
  2. 流程特定选项:

5c. 运行流程

nextflow run nf-core/<pipeline> \
    -r <version> \
    -profile docker \
    --input samplesheet.csv \
    --outdir results \
    --genome <genome> \
    -resume

关键标志:

资源限制(如需要):

--max_cpus 8 --max_memory '32.GB' --max_time '24.h'

第 6 步:验证输出

检查完成

ls results/multiqc/multiqc_report.html
grep "Pipeline completed successfully" .nextflow.log

各流程的关键输出

rnaseq:

sarek:

atacseq:


快速参考

常见退出代码和修复方案参见 references/troubleshooting.md

恢复失败的运行

nextflow run nf-core/<pipeline> -resume

参考文献


免责声明

本技能作为原型示例提供,演示如何将 nf-core 生物信息学流程集成到 Claude Code 中用于自动化分析工作流。当前实现支持三个流程(rnaseq、sarek 和 atacseq),作为社区扩展支持全套 nf-core 流程的基础。

本技能仅供教育和研究用途,在未针对您的特定用例进行适当验证之前,不应视为生产就绪。用户负责确保其计算环境满足流程要求并验证分析结果。

Anthropic 不保证生物信息学输出的准确性,用户应遵循验证计算分析的标准实践。此集成未经 nf-core 社区官方认可或关联。

署名

发表结果时,请引用相应的流程。引用信息可在每个 nf-core 仓库的 CITATIONS.md 文件中找到(例如 https://github.com/nf-core/rnaseq/blob/3.22.2/CITATIONS.md)。

许可证