ngs-bulk-rnaseq — скилл для Codex: RNA-seq от FASTQ до DESeq2
Диспетчер задач bulk RNA-seq: разводит обработку FASTQ в матрицу счётчиков и статистику по готовой матрице. Пригодится, когда нужно посчитать экспрессию и найти дифференциально экспрессированные гены.
npx skills add openai/plugins --skill ngs-bulk-rnaseq -a codexЧто делает ngs-bulk-rnaseq
Скилл работает как маршрутизатор. Если на входе FASTQ или выровненные чтения, он отправляет задачу в ngs-bulk-rnaseq-counts-qc — там nf-core/rnaseq, STAR, Salmon, featureCounts и MultiQC. Если на руках уже матрица счётчиков и метаданные образцов, запрос уходит в ngs-bulk-rnaseq-differential-expression с DESeq2, edgeR или limma.
Перед запуском скилл просит подтвердить организм и сборку генома, FASTA и GTF (или ключ генома nf-core), парный или одиночный рид, strandedness, sample sheet и метаданные, а также контрасты, ковариаты и батчи для DE. Если strandedness неизвестен, сначала идёт определение, иначе финальные счётчики будут неверными.
Для локального прогона есть скрипты plugins/ngs-analysis/scripts/run_bulk_rnaseq_counts_qc.py и run_bulk_rnaseq_de.py, плюс ngs_preflight.py для проверки окружения. По умолчанию скилл советует nf-core/rnaseq с контейнером или HPC, а путь local_light на Snakemake и Salmon — когда Docker и загрузка из реестра недоступны. Локальные запуски складывают результаты в стандартный конверт с run_manifest.json, config.json, artifact_index.json и summary.md.
Какие задачи решает
- развести FASTQ-задачу и анализ готовой матрицы счётчиков
- собрать матрицу экспрессии из FASTQ через nf-core/rnaseq
- определить strandedness перед финальным подсчётом
- проверить окружение и получить план установки зависимостей
- запустить DESeq2 только после подтверждения реплик и дизайна
Примеры запросов агенту
- посчитай экспрессию из FASTQ: samplesheet.csv, транскриптом и GTF в reference/
- у меня есть count_matrix.tsv и sample_metadata.tsv — найди дифференциально экспрессированные гены
- прогони ngs_preflight.py для bulk_rnaseq и покажи план установки
Как установить ngs-bulk-rnaseq
1Через Skills CLI (Vercel)
npx skills add openai/plugins --skill ngs-bulk-rnaseq -a codex2Вручную: положить файлы
.agents/skills/ngs-bulk-rnaseq/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add openai/plugins --skill ngs-bulk-rnaseq -a claude-code2Вручную: положить файлы
~/.claude/skills/ngs-bulk-rnaseq/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/ngs-bulk-rnaseq/
Вручную: положить файлы
.cursor/skills/ngs-bulk-rnaseq/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install openai/plugins ngs-bulk-rnaseq2Вручную: положить файлы
.github/skills/ngs-bulk-rnaseq/SKILL.mdКомандой платформы
gemini skills install https://github.com/openai/plugins --path plugins/ngs-analysis/skills/ngs-bulk-rnaseqВручную: положить файлы
.devin/skills/ngs-bulk-rnaseq/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Claude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Скиллы Codex: как установить, где лежат и как вызвать
Вопросы о ngs-bulk-rnaseq
Как установить ngs-bulk-rnaseq в Claude?
Выполните npx skills add openai/plugins --skill ngs-bulk-rnaseq, затем npx skills add openai/plugins --skill ngs-bulk-rnaseq -a codex. Файл скилла появится по пути .agents/skills/ngs-bulk-rnaseq/SKILL.md.
Что делает ngs-bulk-rnaseq?
Это диспетчер для bulk RNA-seq. Он направляет FASTQ и выровненные чтения в подсчёт счётчиков и QC, а готовую матрицу — в анализ дифференциальной экспрессии.
Когда запускать анализ дифференциальной экспрессии?
Только после того, как подтверждены биологические реплики, формула дизайна и контрасты. Сырую матрицу счётчиков и метаданные образцов при этом нужно сохранить.
Исходный текст
SKILL.md · MIT
--- name: ngs-bulk-rnaseq description: Dispatch bulk RNA-seq requests to FASTQ-to-count QC or count-matrix differential-expression skills using nf-core/rnaseq, STAR, Salmon, featureCounts, MultiQC, and R/Bioconductor workflows. --- # Bulk RNA-seq Use this skill as the bulk RNA-seq dispatcher. Route FASTQ/BAM processing to count-generation QC, and route count-matrix statistical analysis to differential-expression guidance. ## Essential Inputs Confirm: - organism and genome build - FASTA and GTF, or supported nf-core genome key - paired-end or single-end reads - strandedness, or whether to infer strandedness - sample sheet and metadata - counts-only vs differential expression - contrasts, covariates, and batch terms for differential expression ## Dispatch - FASTQ or aligned reads to raw counts, transcript estimates, or MultiQC summaries: `ngs-bulk-rnaseq-counts-qc` - Raw count matrix plus sample metadata to contrasts, plots, and DE result tables: `ngs-bulk-rnaseq-differential-expression` If the user asks for both, run count-generation planning first and start differential expression only after the raw count matrix, sample metadata, replicates, design formula, and contrasts are confirmed. ## Public Default Prefer `nf-core/rnaseq` for standardized processing when a stable container or HPC runtime is available. Use the `local_light` Snakemake/Salmon path when Docker, registry egress, or Nextflow process containers are unavailable and a compact local run is appropriate. ## Plugin-Owned Local Paths Use the counts/QC runner for local FASTQ-to-matrix execution: ```bash python plugins/ngs-analysis/scripts/run_bulk_rnaseq_counts_qc.py \ --sample-sheet samplesheet.csv \ --fastq-root path/to/fastqs \ --transcriptome-fasta reference/transcriptome.fasta \ --genome-fasta reference/genome.fa \ --annotation-gtf reference/genes.gtf \ --execute ``` Use the differential-expression runner when the user already has a count or expression matrix: ```bash python plugins/ngs-analysis/scripts/run_bulk_rnaseq_de.py \ --count-matrix count_matrix.tsv \ --sample-metadata sample_metadata.tsv \ --contrasts contrasts.tsv \ --execute ``` ## Preflight ```bash python plugins/ngs-analysis/scripts/ngs_preflight.py --pipeline bulk_rnaseq --emit-install-plan python plugins/ngs-analysis/scripts/ngs_preflight.py --pipeline bulk_rnaseq_counts_qc --emit-install-plan python plugins/ngs-analysis/scripts/ngs_preflight.py --pipeline bulk_rnaseq_differential_expression --emit-install-plan python plugins/ngs-analysis/scripts/ngs_preflight.py --profile local_light --emit-install-plan ``` ## Kickoff Pattern Preflight run: ```bash nextflow run nf-core/rnaseq \ -profile test,docker \ --outdir results/rnaseq_test ``` Real run skeleton: ```bash nextflow run nf-core/rnaseq \ -profile docker \ --input samplesheet.csv \ --outdir results/rnaseq \ --genome GRCh38 \ --aligner star_salmon ``` If strandedness is unknown, run inference or use the pipeline's strandedness detection before committing to final counts. Local execution run: ```bash python plugins/ngs-analysis/scripts/run_bulk_rnaseq_counts_qc.py \ --sample-sheet samplesheet.csv \ --fastq-root path/to/fastqs \ --transcriptome-fasta reference/transcriptome.fasta ``` The local runners create a standard run envelope with `run_manifest.json`, `config.json`, `validation/`, `logs/`, `versions/`, `artifact_index.json`, and `summary.md`. Do not depend on development-only eval harness paths in a shared package. ## Downstream Only start DESeq2/edgeR/limma analysis after confirming biological replicates, design formula, and contrasts. Preserve the raw count matrix and sample metadata.
© OpenAI · MIT · openai/plugins