ngs-fastq-qc

Установка

$npx skills add https://github.com/openai/plugins/tree/5fd93af4cd0c623e020d0cc7e9ce178b4ac1f70f/plugins/ngs-analysis/skills/ngs-fastq-qc

Ставит скилл в текущий проект - CLI спросит, для каких агентов. С флагом -g - в домашнюю папку, для всех проектов.

Описание

Validate FASTQ inputs, run local FastQC/MultiQC QC, interpret QC signals, and optionally execute fastp or Cutadapt trimming branches without overwriting raw reads.

FASTQ QC

Use this skill for QC-only, trimming-first, or FASTQ quality interpretation workflows. This skill can execute the plugin-owned local FastQ QC runner when the user approves a local run. It should decide whether trimming or additional investigation is warranted; it should not blindly trim by default.

Essential Inputs

Confirm:

  • FASTQ paths and pairing convention
  • whether output should be QC-only or trimmed FASTQs
  • known adapter or primer sequences
  • organism if contamination screening or host depletion is requested
  • output directory
  • whether FASTQs are raw, demultiplexed, previously trimmed, or downloaded from an archive
  • whether downstream analysis expects original read lengths, UMIs, or inline barcodes

Public Tools

Default tool set:

  • FastQC for raw read QC
  • MultiQC for project-level summary
  • fastp for all-in-one QC/trimming when acceptable
  • Cutadapt when primer/adapter handling needs explicit sequences
  • seqkit for quick counts, stats, and subsampling

Preflight

python plugins/ngs-analysis/scripts/ngs_preflight.py --pipeline fastq_qc --emit-install-plan

Local Execution

Use the plugin-owned runner for local artifact-producing FASTQ QC:

python plugins/ngs-analysis/scripts/run_fastq_qc.py \
  --sample-sheet samplesheet.csv \
  --execute

Single paired sample:

python plugins/ngs-analysis/scripts/run_fastq_qc.py \
  --sample sampleA \
  --r1 sampleA_R1.fastq.gz \
  --r2 sampleA_R2.fastq.gz \
  --execute

Optional trimming branch:

python plugins/ngs-analysis/scripts/run_fastq_qc.py \
  --sample-sheet samplesheet.csv \
  --trim-mode fastp \
  --execute

For explicit adapters:

python plugins/ngs-analysis/scripts/run_fastq_qc.py \
  --sample-sheet samplesheet.csv \
  --trim-mode cutadapt \
  --adapter-r1 AGATCGGAAGAGC \
  --adapter-r2 AGATCGGAAGAGC \
  --execute

The runner performs pre-execution validation before Snakemake execution. It writes a timestamped run directory with run_manifest.json, config.json, validation/, workflow/Snakefile, logs, artifact_index.json, summary.md, FastQC/MultiQC outputs, and qc_interpretation.json after successful execution.

Interpretation Rules

Inspect raw QC before recommending trimming:

  • Per-base quality drop at the read end: consider quality trimming, but preserve enough length for alignment or amplicon merging.
  • Adapter or primer signal: use cutadapt when explicit sequences matter; use fastp only when automatic handling is acceptable.
  • Poly-G or patterned-flowcell artifacts: handle with a tool that explicitly supports the artifact and report the assumption.
  • Overrepresented sequences: classify adapters, primers, rRNA, PhiX, host contamination, or true biology before filtering.
  • Per-tile failures or severe quality shifts: flag possible run-level issues and avoid treating them as ordinary adapter contamination.
  • High duplication: interpret by assay; it may be expected for amplicons, targeted panels, or low-input libraries.
  • Pairing issues: verify R1/R2 file counts and read-name pairing before any downstream workflow.

Do not overwrite input FASTQs. Preserve the raw QC reports even when trimmed FASTQs are created.

Kickoff Pattern

QC-only:

mkdir -p results/fastqc results/multiqc
fastqc -t 4 -o results/fastqc *.fastq.gz
multiqc results/fastqc -o results/multiqc

QC plus trimming:

fastp \
  -i sample_R1.fastq.gz \
  -I sample_R2.fastq.gz \
  -o results/trimmed/sample_R1.fastq.gz \
  -O results/trimmed/sample_R2.fastq.gz \
  --html results/fastp/sample.html \
  --json results/fastp/sample.json
multiqc results -o results/multiqc

Output Review

Return a short QC interpretation with:

  1. sample/read-pair inventory
  2. QC modules that look normal
  3. QC modules that require action or user confirmation
  4. trimming or no-trimming recommendation with rationale
  5. downstream caveats such as short reads, contaminated libraries, or failed pairs

When using the local runner, ground the response in the generated qc_interpretation.json, summary.md, and MultiQC report instead of relying only on expected artifacts.

Ещё из openai/plugins

Все 536
  1. agents-sdkв один кликBuild AI agents on Cloudflare Workers using the Agents SDK. Load when creating stateful agents, durable workflows, real-time WebSocket apps, scheduled tasks, MCP…
  2. android-emulator-qaв один кликUse when validating Android feature flows in an emulator with adb-driven launch, input, UI-tree inspection, screenshots, and logcat capture.
  3. build-chatgpt-appв один кликBuild, scaffold, refactor, and troubleshoot ChatGPT Apps SDK applications that combine an MCP server and widget UI. Use when Codex needs to design tools, register UI…
  4. chatgpt-app-submissionв один кликInspect a ChatGPT Apps MCP server codebase and generate chatgpt-app-submission.json with app info suggestions, tool hint justifications, test cases, and negative test…
  5. cloudflareв один кликComprehensive Cloudflare platform skill covering Workers, Pages, storage (KV, D1, R2), AI (Workers AI, Vectorize, Agents SDK), networking (Tunnel, Spectrum), security…
  6. earnings-previewв один кликUse when preparing full pre-earnings preview reports with executive summary, expectation bar, guidance credibility, KPI dashboard, scenarios, and call questions. Do…
  7. notion-knowledge-captureв один кликCapture conversations and decisions into structured Notion pages; use when turning chats/notes into wiki entries, how-tos, decisions, or FAQs with proper linking.
  8. notion-meeting-intelligenceв один кликPrepare meeting materials with Notion context and supplemental research; use when gathering context, drafting agendas/pre-reads, and tailoring materials to attendees.