# deeptools

> NGS analysis toolkit — BAM to bigWig conversion, QC (correlation, PCA, fingerprints), heatmaps and profiles over genomic regions (TSS, peaks) for ChIP-seq, RNA-seq, and ATAC-seq visualization and quality assessment.

**Use case**: Convert BAM files to bigWig and generate ChIP/ATAC heatmaps

**Canonical URL**: https://agentcookbooks.com/skills/deeptools/

**Topics**: claude-code, skills, science, bioinformatics

**Trigger phrases**: "bamCoverage bigWig", "deepTools heatmap", "ChIP-seq visualization", "ATAC-seq profile", "computeMatrix plotHeatmap"

**Source**: [K-Dense AI](https://github.com/K-Dense-AI/scientific-agent-skills/tree/main/scientific-skills/deeptools)

**License**: MIT

---

## What it does

`deeptools` is a Claude Code skill from K-Dense AI's [scientific-agent-skills repo](https://github.com/K-Dense-AI/scientific-agent-skills). It turns Claude into a deepTools command-line expert for NGS data analysis — covering BAM to bigWig conversion (`bamCoverage`, `bamCompare`), cross-sample QC (`multiBamSummary`, `plotCorrelation`, `plotPCA`, `plotFingerprint`), and the signature heatmap/profile workflow (`computeMatrix`, `plotHeatmap`, `plotProfile`) for ChIP-seq peaks, ATAC-seq peaks, TSS regions, and gene bodies.

A session produces a series of shell commands or a Bash script that takes sorted, indexed BAM files as input and produces bigWig tracks and heatmap figures ready for manuscript inclusion.

## When to use it

Reach for it when:

- You need to convert aligned BAM files to normalized bigWig tracks for browser visualization or downstream analysis
- You want to generate publication-style heatmaps showing signal enrichment over peaks, TSS, or gene bodies
- You're assessing ChIP-seq quality — signal-to-noise via fingerprint plots, cross-sample correlation, and PCA

When *not* to reach for it:

- Peak calling — use MACS2/MACS3
- Differential binding analysis — use DiffBind or DESeq2 on count matrices

## Install

Copy the `SKILL.md` from K-Dense AI's [deeptools folder](https://github.com/K-Dense-AI/scientific-agent-skills/tree/main/scientific-skills/deeptools) into `.claude/skills/deeptools/` in your project. Requires deepTools installed in your conda environment (`conda install -c bioconda deeptools`).

Trigger phrases: "bamCoverage bigWig", "deepTools heatmap", "ChIP-seq visualization", "computeMatrix plotHeatmap".

## What a session looks like

A typical session has three phases:

1. **Input and normalization specification.** Describe the experiment type (ChIP-seq, ATAC-seq, RNA-seq), available BAM files (IP, input/control), and desired normalization (RPKM, CPM, BPM, or spike-in scaling). Claude generates the appropriate `bamCoverage` or `bamCompare` command with the correct flags.
2. **Matrix computation.** `computeMatrix` runs in reference-point or scale-regions mode, centered on the provided BED file of peaks or TSS annotations, with appropriate flanking window and bin size for the experiment type.
3. **Visualization.** `plotHeatmap` and `plotProfile` commands with appropriate color scales, sorted by signal intensity, produce publication-ready figures. Claude adds clustering options (k-means) for datasets with heterogeneous enrichment patterns.

## Receipts

**Where it works well:**
- Standard ChIP-seq heatmaps for transcription factor peaks — the `computeMatrix reference-point` → `plotHeatmap` pipeline is reliable and the default parameters work well for sharp peaks
- Cross-sample QC with `plotFingerprint` — a key quality check that catches low-enrichment samples before they go into downstream analysis

**Where it backfires:**
- Very large BAM files (>50M reads) can make `bamCoverage` slow without the `--numberOfProcessors` flag; Claude doesn't always add this automatically
- Spike-in normalization requires careful calculation of scaling factors from the spike-in BAM file — the command construction is correct but the scaling factor computation is your responsibility

**Pattern that works:** always run `plotFingerprint` first on your ChIP-seq BAMs before generating heatmaps — it quickly reveals whether enrichment is present, saving hours of downstream analysis on a failed experiment.

## Source and attribution

Originally authored by [K-Dense Inc.](https://github.com/K-Dense-AI). The canonical SKILL.md lives in the [`deeptools` folder](https://github.com/K-Dense-AI/scientific-agent-skills/tree/main/scientific-skills/deeptools) of their public scientific-agent-skills repository.

License: MIT. Install, adapt, and redistribute with attribution preserved.

This page documents the skill from a practitioner's perspective. For the formal spec and any updates, defer to the source repo.