Skip to main content
skill CX Codex GP ChatGPT official · OpenAI

ngs-dna-somatic-variants — Claude skill: somatic DNA variant calling

A skill that plans and runs somatic variant workflows for tumor-normal and tumor-only designs, WGS, WES and cancer panels. Useful for checking sample pairs before a pipeline starts.

Install into Codex · Skills CLI (Vercel) All methods and platforms ↓
npx skills add openai/plugins --skill ngs-dna-somatic-variants -a codex
Open on GitHub

What ngs-dna-somatic-variants does

The skill handles somatic SNV and indel calling from FASTQ, BAM or CRAM. Four designs are covered: tumor-normal, tumor-only, relapse-baseline and multi-tumor. Inherited germline calling and family analysis belong to a separate skill, ngs-dna-germline-variants.

Two scripts do the work. ngs_preflight.py inspects the environment and prints an install plan; run_dna_somatic_variants.py builds the pairing table, the Mutect2 command plan, contamination and filtering artifacts, and a QC summary. A full pipeline route exists through run_nfcore_pipeline.py --pipeline sarek. Outputs include a validated sample sheet, a resource manifest, qc/somatic_pair_review.tsv plus JSON, and filtered VCF files.

Resource checking is advisory by default, so custom or reduced references can still be planned. Adding --genome-build, --bundle-root and --require-resource-plan makes missing registered bundles block readiness instead. A swapped or absent normal changes what the calls mean biologically, so verify pair metadata first. Tumor-only runs need a germline resource and careful filtering, or false positives reach the report as somatic. Never reuse a panel-of-normals across incompatible capture kits or genome builds.

What it helps with

  • verify tumor-normal pairs before a pipeline run
  • plan Mutect2 calls from prepared BAM or CRAM files
  • summarize QC on depth, contamination and duplication
  • filter false positives out of tumor-only calls
  • prepare a reference and germline resource manifest

Example prompts for the agent

  • Check the sample pairs in somatic_pairs.tsv and build a Mutect2 run plan
  • Run run_dna_somatic_variants.py with reference.fa and the panel-of-normals pon.vcf.gz
  • Plan the sarek pipeline for a WES panel with a target BED

How to install ngs-dna-somatic-variants

1Skills CLI (Vercel)

npx skills add openai/plugins --skill ngs-dna-somatic-variants -a codex

2Manually: put the files in place

.agents/skills/ngs-dna-somatic-variants/SKILL.md

For all projects use ~/.agents/skills/

Step by step, with commands for each platform: Codex skills: how to install, where they live, how to call them

Questions about ngs-dna-somatic-variants

How do I install ngs-dna-somatic-variants in Claude?

Run npx skills add openai/plugins --skill ngs-dna-somatic-variants, then npx skills add openai/plugins --skill ngs-dna-somatic-variants -a codex. The skill file lands at .agents/skills/ngs-dna-somatic-variants/SKILL.md.

What does ngs-dna-somatic-variants do?

It plans and runs somatic SNV/indel calling for tumor-normal and tumor-only designs across WGS, WES and cancer panels. You get a pairing table, a command plan, a QC summary and filtered VCFs.

How does tumor-only differ from tumor-normal here?

For tumor-only the skill asks you to state the false-positive risk explicitly and to supply a germline resource with careful filtering. Calls without supporting evidence should not be presented as confirmed somatic.

Source text

SKILL.md · MIT
---
name: ngs-dna-somatic-variants
description: Run or plan tumor-normal, tumor-only, WGS, WES, or cancer-panel somatic variant workflows with pairing, contamination, panel-of-normals, purity, QC, and annotation checks.
---

# Somatic DNA Variants

Use this skill for tumor-normal or tumor-only somatic SNV/indel calling from FASTQ, BAM, or CRAM. If the request is inherited germline calling or family analysis, use `ngs-dna-germline-variants`.

## Essential Inputs

Confirm:

- tumor-normal, tumor-only, relapse-baseline, or multi-tumor design
- WGS, WES, or panel assay and target BED when applicable
- input type and whether reads are already aligned
- tumor/normal pairing table and sample identifiers
- reference build, known-sites, germline resource, and annotation cache
- panel-of-normals availability and matched-normal availability
- tumor purity, contamination expectations, and minimum allele fraction goals
- desired outputs: raw calls, filtered calls, VEP/SnpEff annotation, MAF, CNV/SV handoff

## Route

Prefer `nf-core/sarek` for an end-to-end public workflow when its supported callers fit the request. Use direct GATK Mutect2 or bcftools/samtools utilities for focused validation or prepared BAMs.

Preflight command:

```bash
python plugins/ngs-analysis/scripts/ngs_preflight.py --pipeline dna_somatic_variants --emit-install-plan
```

For compact local checks from prepared tumor/normal BAM/CRAM files, use the dedicated Mutect2 runner:

```bash
python plugins/ngs-analysis/scripts/run_dna_somatic_variants.py \
  --sample-sheet somatic_pairs.tsv \
  --reference-fasta reference.fa \
  --germline-resource af-only-gnomad.vcf.gz \
  --panel-of-normals pon.vcf.gz \
  --execute
```

This produces a tumor-normal/tumor-only pairing table, Mutect2 command plan, contamination/filtering artifacts, somatic QC summary, `qc/somatic_pair_review.{tsv,json}`, visualization index, and filtered VCF outputs when the local GATK resources are available. For nf-core execution, use `plugins/ngs-analysis/scripts/run_nfcore_pipeline.py --pipeline sarek`.

The direct runner also emits `resources/resource_plan.json`, `resource_manifest.tsv`, `resource_env.sh`, and `resource_readiness.md`. The resource check is advisory by default so custom or reduced references can still be planned; add `--genome-build`, `--bundle-root <bundle>=<path>`, and `--require-resource-plan` when missing registered reference bundles should block readiness.

## Decision Points

- Verify tumor-normal pair metadata before execution. A swapped or missing normal changes the biological meaning of the calls.
- For tumor-only analysis, explicitly state the false-positive risk and require a germline resource plus careful filtering.
- Use panel-of-normals when available and reference-matched; do not reuse a PON across incompatible capture kits or genome builds.
- Track contamination, orientation bias, strand artifacts, mapping quality, coverage, tumor purity, and allele-fraction filters.
- Keep germline filtering separate from somatic interpretation; avoid presenting tumor-only calls as confirmed somatic without supporting evidence.

## Outputs

Produce:

- validated pairing/sample sheet
- caller/filter settings and reference/resource manifest
- QC summary: tumor/normal depth, contamination, duplication, insert size, on-target rate for panels/WES
- per-pair review table covering matched-normal state, PON/germline-resource availability, contamination-table status, filtered VCF status, and parsed variant counts
- VCF/MAF/annotation paths and a filtered-vs-raw call count summary
- caveats for tumor-only calls, low-purity tumors, low-depth regions, or missing matched normals

Clinical actionability and treatment recommendations are out of scope unless the user supplies a validated clinical interpretation workflow.

© OpenAI · MIT · openai/plugins

Similar skills

All skills for Science and research →

From the same set422

The whole set →
plugin-eval This skill reviews local skills and plugins, explains their scores, and plans the next run. Use it for token measurements or starter benchmarks. CX Codex GP ChatGPT 2installs ngs-scrna-seq This skill takes single-cell or single-nucleus RNA-seq from FASTQ to a count matrix, then hands QC and clustering to an embedded skill. CX Codex GP ChatGPT 2installs ngs-epigenomics-peaks Routes ATAC-seq, ChIP-seq, CUT&RUN and CUT&Tag work to the right pipeline: QC, alignment, signal tracks, peak calling, consensus and differential peaks. CX Codex GP ChatGPT 2installs ngs-dna-umi-panel-variants Plan or run targeted DNA panel analysis with UMIs, consensus reads and low-frequency variant calling. Useful when molecular evidence and panel-specific QC matter. CX Codex GP ChatGPT 2installs ngs-chip-cutrun-peaks-qc Plans and runs QC for ChIP-seq, CUT&RUN, and CUT&Tag, covering controls, peak calls, bigWigs, replicates, and differential binding. CX Codex GP ChatGPT 2installs ngs-bulk-rnaseq A dispatcher for bulk RNA-seq work: it splits FASTQ-to-count processing from count-matrix statistics. Useful when you need expression counts and then differentially expressed genes. CX Codex GP ChatGPT 2installs ngs-bulk-rnaseq-counts-qc Plans or runs bulk RNA-seq processing from FASTQ reads to count matrices, with MultiQC and QC checks. Use it before differential-expression analysis. CX Codex GP ChatGPT 2installs ngs-bcl-to-fastq Validates an Illumina run folder and sample sheet, plans demultiplexing, and runs BCL-to-FASTQ conversion. Useful when the input is a sequencing run folder. CX Codex GP ChatGPT 2installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor