nextflow-development

Par anthropics · knowledge-work-plugins

Exécute des pipelines bioinformatiques nf-core (rnaseq, sarek, atacseq) sur des données de séquençage. À utiliser pour analyser des données RNA-seq, WGS/WES ou ATAC-seq — que ce soit des FASTQs locaux ou des jeux de données publics issus de GEO/SRA. Se déclenche sur : nf-core, Nextflow, analyse FASTQ, variant calling, expression génique, expression différentielle, réanalyse GEO, accessions GSE/GSM/SRR, ou création de samplesheet.

npx skills add https://github.com/anthropics/knowledge-work-plugins --skill nextflow-development

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 :

  1. Génome : Quelle référence utiliser
  2. 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 (ou singularity pour 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ènes
  • results/star_salmon/salmon.merged.gene_tpm.tsv - Valeurs TPM

sarek :

  • results/variant_calling/*/ - Fichiers VCF
  • results/preprocessing/recalibrated/ - Fichiers BAM

atacseq :

  • results/macs2/narrowPeak/ - Appels de pics
  • results/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


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

Skills similaires