Déploiement de pipelines nf-core
Exécutez des pipelines de bioinformatique nf-core sur des données de séquençage locales ou publiques.
Utilisateurs cibles : Chercheurs de paillasse et scientifiques sans formation bioinformatique spécialisée qui ont besoin d'exécuter des analyses omiques à grande échelle—expression différentielle, appel de variants ou analyse d'accessibilité chromatinienne.
Checklist du workflow
- [ ] Étape 0 : Acquérir les données (si depuis GEO/SRA)
- [ ] Étape 1 : Vérification de l'environnement (OBLIGATOIRE)
- [ ] Étape 2 : Sélectionner le pipeline (confirmer avec l'utilisateur)
- [ ] Étape 3 : Exécuter le profil test (OBLIGATOIRE)
- [ ] Étape 4 : Créer la feuille d'échantillons
- [ ] Étape 5 : Configurer et exécuter (confirmer le génome avec l'utilisateur)
- [ ] Étape 6 : Vérifier les résultats
Étape 0 : Acquérir les données (GEO/SRA uniquement)
Ignorez cette étape si l'utilisateur dispose de fichiers FASTQ locaux.
Pour les données publiques, téléchargez d'abord depuis GEO/SRA. Consultez references/geo-sra-acquisition.md pour le workflow complet.
Démarrage rapide :
# 1. Obtenir les infos de l'étude
python scripts/sra_geo_fetch.py info GSE110004
# 2. Télécharger (mode interactif)
python scripts/sra_geo_fetch.py download GSE110004 -o ./fastq -i
# 3. Générer la feuille d'échantillons
python scripts/sra_geo_fetch.py samplesheet GSE110004 --fastq-dir ./fastq -o samplesheet.csv
POINT DE DÉCISION : Après avoir récupéré les infos de l'étude, confirmez avec l'utilisateur :
- Quel sous-ensemble d'échantillons télécharger (si plusieurs types de données)
- Génome et pipeline suggérés
Puis passez à l'Étape 1.
Étape 1 : Vérification de l'environnement
À exécuter en premier. Le pipeline échouera sans passer cette vérification.
python scripts/check_environment.py
Tous les contrôles critiques doivent réussir. En cas d'échec, fournissez les instructions de correction :
Problèmes Docker
| Problème | Solution |
|---|---|
| Non installé | Installer depuis https://docs.docker.com/get-docker/ |
| Permission refusée | sudo usermod -aG docker $USER puis se reconnecter |
| Daemon non actif | sudo systemctl start docker |
Problèmes Nextflow
| Problème | Solution |
|---|---|
| Non installé | curl -s https://get.nextflow.io \| bash && mv nextflow ~/bin/ |
| Version < 23.04 | nextflow self-update |
Problèmes Java
| Problème | Solution |
|---|---|
| Non installé / < 11 | sudo apt install openjdk-11-jdk |
Ne pas procéder tant que tous les contrôles ne passent pas. Pour HPC/Singularity, consultez references/troubleshooting.md.
Étape 2 : Sélectionner le pipeline
POINT DE DÉCISION : Confirmer avec l'utilisateur avant de procéder.
| Type de données | Pipeline | Version | Objectif |
|---|---|---|---|
| RNA-seq | rnaseq |
3.22.2 | Expression génique |
| WGS/WES | sarek |
3.7.1 | Appel de variants |
| ATAC-seq | atacseq |
2.1.2 | Accessibilité chromatinienne |
Détection automatique depuis les données :
python scripts/detect_data_type.py /path/to/data
Pour les détails spécifiques au pipeline :
Étape 3 : Exécuter le profil test
Valide l'environnement avec de petites données. OBLIGATOIRE avant les vraies données.
nextflow run nf-core/<pipeline> -r <version> -profile test,docker --outdir test_output
| Pipeline | Commande |
|---|---|
| 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 |
Vérifier :
ls test_output/multiqc/multiqc_report.html
grep "Pipeline completed successfully" .nextflow.log
Si le test échoue, consultez references/troubleshooting.md.
Étape 4 : Créer la feuille d'échantillons
Générer automatiquement
python scripts/generate_samplesheet.py /path/to/data <pipeline> -o samplesheet.csv
Le script :
- Découvre les fichiers FASTQ/BAM/CRAM
- Apparie les lectures R1/R2
- Déduit les métadonnées d'échantillon
- Valide avant d'écrire
Pour sarek : Le script demande le statut tumeur/normal s'il n'est pas détecté automatiquement.
Valider une feuille d'échantillons existante
python scripts/generate_samplesheet.py --validate samplesheet.csv <pipeline>
Formats de feuille d'échantillons
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
Étape 5 : Configurer et exécuter
5a. Vérifier la disponibilité du génome
python scripts/manage_genomes.py check <genome>
# Si non installé :
python scripts/manage_genomes.py download <genome>
Génomes courants : GRCh38 (humain), GRCh37 (legacy), GRCm39 (souris), R64-1-1 (levure), BDGP6 (mouche)
5b. Points de décision
POINT DE DÉCISION : Confirmer avec l'utilisateur :
- Génome : Quelle référence utiliser
- Options spécifiques au pipeline :
- rnaseq : aligneur (star_salmon recommandé, hisat2 pour faible mémoire)
- sarek : outils (haplotypecaller pour germinal, mutect2 pour somatique)
- atacseq : read_length (50, 75, 100 ou 150)
5c. Exécuter le pipeline
nextflow run nf-core/<pipeline> \
-r <version> \
-profile docker \
--input samplesheet.csv \
--outdir results \
--genome <genome> \
-resume
Flags principaux :
-r: Fixer la version-profile docker: Utiliser Docker (ousingularitypour HPC)--genome: Clé iGenomes-resume: Continuer depuis un point de contrôle
Limites de ressources (si nécessaire) :
--max_cpus 8 --max_memory '32.GB' --max_time '24.h'
Étape 6 : Vérifier les résultats
Vérifier l'achèvement
ls results/multiqc/multiqc_report.html
grep "Pipeline completed successfully" .nextflow.log
Résultats clés par pipeline
rnaseq :
results/star_salmon/salmon.merged.gene_counts.tsv- Comptages de gènesresults/star_salmon/salmon.merged.gene_tpm.tsv- Valeurs TPM
sarek :
results/variant_calling/*/- Fichiers VCFresults/preprocessing/recalibrated/- Fichiers BAM
atacseq :
results/macs2/narrowPeak/- Appels de picsresults/bwa/mergedLibrary/bigwig/- Pistes de couverture
Référence rapide
Pour les codes de sortie courants et les corrections, consultez references/troubleshooting.md.
Reprendre une exécution échouée
nextflow run nf-core/<pipeline> -resume
Références
- references/geo-sra-acquisition.md - Téléchargement de données publiques GEO/SRA
- references/troubleshooting.md - Problèmes courants et solutions
- references/installation.md - Configuration de l'environnement
- references/pipelines/rnaseq.md - Détails du pipeline RNA-seq
- references/pipelines/sarek.md - Détails de l'appel de variants
- references/pipelines/atacseq.md - Détails d'ATAC-seq
Avertissement
Cette skill est fournie comme exemple de prototype démontrant comment intégrer les pipelines bioinformatiques nf-core dans Claude Code pour les workflows d'analyse automatisés. L'implémentation actuelle supporte trois pipelines (rnaseq, sarek et atacseq), servant de fondation pour permettre à la communauté d'étendre le support à l'ensemble complet des pipelines nf-core.
Elle est destinée à des fins éducatives et de recherche et ne doit pas être considérée comme prête pour la production sans validation appropriée pour votre cas d'usage spécifique. Les utilisateurs sont responsables de s'assurer que leur environnement informatique répond aux exigences du pipeline et de vérifier les résultats d'analyse.
Anthropic ne garantit pas l'exactitude des résultats bioinformatiques, et les utilisateurs doivent suivre les pratiques standard pour valider les analyses computationnelles. Cette intégration n'est pas officiellement approuvée par ou affiliée à la communauté nf-core.
Attribution
Lors de la publication de résultats, citez le pipeline approprié. Les citations sont disponibles dans le fichier CITATIONS.md de chaque dépôt nf-core (par exemple, https://github.com/nf-core/rnaseq/blob/3.22.2/CITATIONS.md).
Licences
- Pipelines nf-core : Licence MIT (https://nf-co.re/about)
- Nextflow : Licence Apache, version 2.0 (https://www.nextflow.io/about-us.html)
- NCBI SRA Toolkit : Domaine public (https://github.com/ncbi/sra-tools/blob/master/LICENSE)