[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M73GC88AZ3Y6KTHMZ1FKB1GS":3,"skill-same:01M73GC88AZ3Y6KTHMZ1FKB1GS":48},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":24,"commitSha":25,"skillDirectory":26,"forksCount":27,"repositoryHtmlUrl":28,"repositoryHomepageUrl":29,"ownerHtmlUrl":30,"ownerBlogUrl":31,"ownerDescription":32,"updatedAt":33,"install":34,"resources":47},"01M73GC88AZ3Y6KTHMZ1FKB1GS","deeptools-ngs-analysis",null,"NGS CLI for ChIP\u002FRNA\u002FATAC-seq. BAM→bigWig with RPGC\u002FCPM\u002FRPKM, sample correlation\u002FPCA, heatmaps\u002Fprofiles around features, fingerprints. For alignment use STAR\u002FBWA; for peak calling use MACS2.","bg-szy\u002FTOP-SKILLS","bg-szy","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F106576190?v=4","01M73A4E8KPV67SFXRY8XZGNBX","ShuZhiyong","01M73A4E96MQ294MHM74TZBVQD",6,"BSD-3-Clause","https:\u002F\u002Fgithub.com\u002Fbg-szy\u002FTOP-SKILLS\u002Fblob\u002Fmaster\u002Fskills\u002Fawesome-skills\u002Fdeeptools-ngs-analysis\u002FSKILL.md",[],[],"2026-11-11 15:11:14",false,"---\nname: deeptools-ngs-analysis\ndescription: \"NGS CLI for ChIP\u002FRNA\u002FATAC-seq. BAM→bigWig with RPGC\u002FCPM\u002FRPKM, sample correlation\u002FPCA, heatmaps\u002Fprofiles around features, fingerprints. For alignment use STAR\u002FBWA; for peak calling use MACS2.\"\nlicense: BSD-3-Clause\n---\n\n# deepTools — NGS Data Analysis Toolkit\n\n## Overview\n\ndeepTools is a command-line toolkit for processing and visualizing high-throughput sequencing data. It converts BAM alignments to normalized coverage tracks (bigWig), performs quality control (correlation, PCA, fingerprint), and generates publication-quality heatmaps and profile plots around genomic features. Supports ChIP-seq, RNA-seq, ATAC-seq, and MNase-seq.\n\n## When to Use\n\n- Converting BAM files to normalized bigWig coverage tracks\n- Comparing ChIP-seq treatment vs input control (log2 ratio tracks)\n- Assessing sample quality: replicate correlation, PCA, coverage depth\n- Evaluating ChIP enrichment strength (fingerprint plots)\n- Creating heatmaps and profile plots around TSS, peaks, or other genomic regions\n- Analyzing ATAC-seq data with Tn5 offset correction\n- Generating strand-specific RNA-seq coverage tracks\n- Use **omics-plotting** SKILL for custom figures from exported score matrices; standard signal heatmaps\u002Fprofiles use deeptools' own `plotHeatmap`\u002F`plotProfile`\n- For **read alignment**, use STAR, BWA, or bowtie2 instead\n- For **peak calling**, use MACS2 or HOMER instead\n- For **BAM\u002FVCF file manipulation**, use pysam instead\n\n## Prerequisites\n\n```bash\npip install deeptools\n# Verify installation\nbamCoverage --version\n```\n\n**Input requirements**: BAM files must be sorted and indexed (`.bai` file present). Generate index with `samtools index input.bam`. BED files for genomic regions (genes, peaks) in standard 3+ column format.\n\n## Pre-flight Interview\n\nSettle these with the user before writing any analysis code.\n\n```yaml\ndecisions:\n  - id: D1\n    param: normalizationMethod\n    kind: required\n    source: user\n    ask: \"How should coverage be scaled so tracks from different samples can be compared - by read depth, by genome coverage, or not at all?\"\n    default: \"none - raw coverage, comparable only within one sample\"\n\n  - id: D2\n    param: effectiveGenomeSize\n    kind: derived\n    source: upstream\n    depends_on: [D1]\n    ask: \"Which assembly's mappable size should the coverage normalization use?\"\n    default: \"looked up for the alignment reference\"\n    skip_if: \"normalization does not require a genome size\"\n\n  - id: D3\n    param: readExtension\n    kind: required\n    source: user\n    ask: \"Should reads be extended to the sequenced fragment length? Correct for ChIP and ATAC, wrong for spliced RNA.\"\n    default: \"not extended\"\n\n  - id: D4\n    param: duplicateHandling\n    kind: required\n    source: user\n    ask: \"Should reads flagged as duplicates be ignored when building coverage?\"\n    default: \"included\"\n\n  - id: D5\n    param: mappingQualityFloor\n    kind: required\n    source: user\n    ask: \"Below what mapping confidence should reads be excluded from the signal?\"\n    default: \"no filter\"\n\n  - id: D6\n    param: binSize\n    kind: optional\n    source: user\n    ask: \"At what resolution should signal be summarized?\"\n    default: \"50 bp\"\n\n  - id: D7\n    param: comparisonOperation\n    kind: optional\n    source: user\n    ask: \"When comparing two samples, should the track hold a log ratio, a plain ratio, or a difference?\"\n    default: \"log2 ratio\"\n\n  - id: D8\n    param: profileAnchor\n    kind: optional\n    source: user\n    ask: \"Should profiles be anchored on feature starts, ends, centres, or scaled across whole features?\"\n    default: \"feature start, 500 bp either side\"\n\n  - id: D9\n    param: processors\n    kind: never_ask\n    source: data\n    reason: \"Affects runtime only, not the signal\"\n    default: \"min(8, available_cores)\"\n```\n\nD1 and D3 are the pair that makes tracks comparable or quietly misleading.\nUnnormalized tracks put the deeper-sequenced sample higher everywhere, which\nreads as biology on a genome browser; extending RNA-seq reads to a fragment\nlength fills introns with signal that was never sequenced.\n\n## Quick Start\n\n```bash\n# Convert BAM to normalized bigWig\nbamCoverage --bam sample.bam --outFileName sample.bw \\\n    --normalizeUsing RPGC --effectiveGenomeSize 2913022398 \\\n    --binSize 10 --numberOfProcessors 8\n\n# Create heatmap around TSS\ncomputeMatrix reference-point -S sample.bw -R genes.bed \\\n    -b 3000 -a 3000 --referencePoint TSS -o matrix.gz\nplotHeatmap -m matrix.gz -o heatmap.png --colorMap RdBu\n```\n\n## Core API\n\n### 1. BAM to Coverage Conversion\n\nConvert BAM alignments to normalized coverage tracks (bigWig or bedGraph).\n\n```bash\n# Basic conversion with RPGC normalization\nbamCoverage --bam input.bam --outFileName output.bw \\\n    --normalizeUsing RPGC --effectiveGenomeSize 2913022398 \\\n    --binSize 10 --numberOfProcessors 8 \\\n    --extendReads 200 --ignoreDuplicates\n\n# CPM normalization (simpler, no genome size needed)\nbamCoverage --bam input.bam --outFileName output.bw \\\n    --normalizeUsing CPM --binSize 10 -p 8\n\n# RNA-seq: strand-specific coverage\nbamCoverage --bam rnaseq.bam --outFileName forward.bw \\\n    --filterRNAstrand forward --normalizeUsing CPM -p 8\n# IMPORTANT: Never use --extendReads for RNA-seq (spans splice junctions)\n```\n\n### 2. Sample Comparison\n\nCompare treatment vs control or generate ratio tracks.\n\n```bash\n# Log2 ratio: treatment \u002F control\nbamCompare -b1 treatment.bam -b2 control.bam -o log2ratio.bw \\\n    --operation log2 --scaleFactorsMethod readCount \\\n    --extendReads 200 -p 8\n\n# Subtract control from treatment\nbamCompare -b1 treatment.bam -b2 control.bam -o subtract.bw \\\n    --operation subtract --scaleFactorsMethod readCount\n```\n\n### 3. Quality Control\n\nAssess sample quality, replicate concordance, and enrichment strength.\n\n```bash\n# Sample correlation heatmap\nmultiBamSummary bins --bamfiles rep1.bam rep2.bam rep3.bam \\\n    -o counts.npz --binSize 10000 -p 8\nplotCorrelation -in counts.npz --corMethod pearson \\\n    --whatToShow heatmap -o correlation.png\n# Good: replicates cluster with r > 0.9\n\n# PCA of samples\nplotPCA -in counts.npz -o pca.png --plotTitle \"Sample PCA\"\n\n# ChIP enrichment fingerprint\nplotFingerprint -b input.bam chip.bam -o fingerprint.png \\\n    --extendReads 200 --ignoreDuplicates\n# Good ChIP: steep rise curve; flat diagonal = poor enrichment\n\n# Coverage depth assessment\nplotCoverage -b sample.bam -o coverage.png --ignoreDuplicates -p 8\n\n# Fragment size distribution (paired-end)\nbamPEFragmentSize -b sample.bam -o fragsize.png\n```\n\n### 4. Heatmaps and Profile Plots\n\nVisualize signal around genomic features (TSS, peaks, gene bodies).\n\n```bash\n# Reference-point mode: signal around TSS\ncomputeMatrix reference-point -S chip.bw -R genes.bed \\\n    -b 3000 -a 3000 --referencePoint TSS -o matrix.gz -p 8\n\n# Scale-regions mode: signal across gene bodies\ncomputeMatrix scale-regions -S chip.bw -R genes.bed \\\n    -b 1000 -a 1000 --regionBodyLength 5000 -o matrix.gz -p 8\n\n# Generate heatmap\nplotHeatmap -m matrix.gz -o heatmap.png \\\n    --colorMap RdBu --kmeans 3 --sortUsing mean\n\n# Generate profile plot\nplotProfile -m matrix.gz -o profile.png \\\n    --plotType lines --colors blue red\n\n# Multiple signal files: compare marks\ncomputeMatrix reference-point -S h3k4me3.bw h3k27me3.bw -R genes.bed \\\n    -b 3000 -a 3000 --referencePoint TSS -o multi_matrix.gz\nplotHeatmap -m multi_matrix.gz -o multi_heatmap.png\n```\n\n### 5. Read Filtering and Processing\n\nFilter reads before analysis or correct for assay-specific biases.\n\n```bash\n# Filter by mapping quality and fragment size\nalignmentSieve --bam input.bam --outFile filtered.bam \\\n    --minMappingQuality 10 --minFragmentLength 150 \\\n    --maxFragmentLength 700\n\n# ATAC-seq: apply Tn5 offset correction (+4\u002F-5 bp shift)\nalignmentSieve --bam atac.bam --outFile shifted.bam --ATACshift\n# Then index: samtools index shifted.bam\n\n# GC bias correction (only if significant bias detected)\ncomputeGCBias -b input.bam --effectiveGenomeSize 2913022398 \\\n    -g genome.2bit --GCbiasFrequenciesFile gc_freq.txt -p 8\ncorrectGCBias -b input.bam --effectiveGenomeSize 2913022398 \\\n    --GCbiasFrequenciesFile gc_freq.txt -o corrected.bam\n```\n\n### 6. Enrichment Analysis\n\nQuantify signal enrichment at specific regions.\n\n```bash\n# Signal enrichment at peak regions\nplotEnrichment -b chip.bam input.bam --BED peaks.bed \\\n    -o enrichment.png --ignoreDuplicates -p 8\n```\n\n## Key Concepts\n\n### Normalization Methods\n\n| Method | Formula | When to Use | Requires |\n|--------|---------|-------------|----------|\n| **RPGC** | 1× genome coverage | ChIP-seq, ATAC-seq | `--effectiveGenomeSize` |\n| **CPM** | Counts per million | Any assay, quick comparison | Nothing |\n| **RPKM** | Per kb per million | RNA-seq gene-level | Nothing |\n| **BPM** | Bins per million | Similar to CPM | Nothing |\n| **None** | Raw counts | Not recommended for comparison | Nothing |\n\n**Rule**: Use RPGC for ChIP-seq\u002FATAC-seq (accounts for genome size). Use CPM for quick comparisons. Use RPKM for RNA-seq gene-level analysis.\n\n### Effective Genome Sizes\n\n| Organism | Assembly | Effective Size |\n|----------|----------|---------------|\n| Human | GRCh38\u002Fhg38 | 2,913,022,398 |\n| Mouse | GRCm38\u002Fmm10 | 2,652,783,500 |\n| Zebrafish | GRCz11 | 1,368,780,147 |\n| *Drosophila* | dm6 | 142,573,017 |\n| *C. elegans* | ce10\u002Fce11 | 100,286,401 |\n\n### computeMatrix Modes\n\n| Mode | Use When | Key Params |\n|------|----------|------------|\n| `reference-point` | Signal around a fixed point (TSS, peak summit) | `-b`, `-a`, `--referencePoint` |\n| `scale-regions` | Signal across variable-length features (gene bodies) | `-b`, `-a`, `--regionBodyLength` |\n\n## Common Workflows\n\n### Workflow: ChIP-seq QC and Visualization\n\n```bash\n#!\u002Fbin\u002Fbash\n# Complete ChIP-seq QC + visualization pipeline\nCHIP=\"chip.bam\"\nINPUT=\"input.bam\"\nGENES=\"genes.bed\"\nPEAKS=\"peaks.bed\"\nGSIZE=2913022398\nTHREADS=8\n\n# 1. QC: sample correlation\nmultiBamSummary bins --bamfiles $INPUT $CHIP -o summary.npz -p $THREADS\nplotCorrelation -in summary.npz --corMethod pearson --whatToShow heatmap -o correlation.png\n\n# 2. QC: enrichment fingerprint\nplotFingerprint -b $INPUT $CHIP -o fingerprint.png --extendReads 200 --ignoreDuplicates\n\n# 3. Convert to normalized bigWig\nbamCoverage --bam $CHIP --outFileName chip.bw --normalizeUsing RPGC \\\n    --effectiveGenomeSize $GSIZE --extendReads 200 --ignoreDuplicates -p $THREADS\n\n# 4. Log2 ratio track\nbamCompare -b1 $CHIP -b2 $INPUT -o log2ratio.bw --operation log2 \\\n    --scaleFactorsMethod readCount --extendReads 200 -p $THREADS\n\n# 5. Heatmap at TSS\ncomputeMatrix reference-point -S chip.bw log2ratio.bw -R $GENES \\\n    -b 3000 -a 3000 --referencePoint TSS -o tss_matrix.gz -p $THREADS\nplotHeatmap -m tss_matrix.gz -o tss_heatmap.png --colorMap RdBu --kmeans 3\n\n# 6. Profile at peaks\ncomputeMatrix reference-point -S chip.bw -R $PEAKS \\\n    -b 2000 -a 2000 -o peak_matrix.gz -p $THREADS\nplotProfile -m peak_matrix.gz -o peak_profile.png\n```\n\n### Workflow: ATAC-seq Analysis\n\n```bash\n#!\u002Fbin\u002Fbash\nATAC=\"atac.bam\"\nPEAKS=\"atac_peaks.bed\"\nGSIZE=2913022398\nTHREADS=8\n\n# 1. Apply Tn5 offset correction (+4\u002F-5 bp)\nalignmentSieve --bam $ATAC --outFile shifted.bam --ATACshift -p $THREADS\nsamtools index shifted.bam\n\n# 2. Generate RPGC-normalized coverage\nbamCoverage --bam shifted.bam --outFileName atac.bw \\\n    --normalizeUsing RPGC --effectiveGenomeSize $GSIZE \\\n    --binSize 5 --extendReads -p $THREADS\n\n# 3. Check nucleosome periodicity (expect 200bp\u002F400bp peaks)\nbamPEFragmentSize -b shifted.bam -o fragsize.png \\\n    --maxFragmentLength 1000 --binSize 1\n\n# 4. Heatmap at ATAC peaks\ncomputeMatrix reference-point -S atac.bw -R $PEAKS \\\n    -b 2000 -a 2000 -o atac_matrix.gz -p $THREADS\nplotHeatmap -m atac_matrix.gz -o atac_heatmap.png --colorMap Blues --kmeans 2\n```\n\n## Key Parameters\n\n| Parameter | Tool(s) | Default | Range | Effect |\n|-----------|---------|---------|-------|--------|\n| `--normalizeUsing` | bamCoverage, bamCompare | None | RPGC, CPM, RPKM, BPM, None | Coverage normalization method |\n| `--effectiveGenomeSize` | bamCoverage, bamCompare | — | See table above | Required for RPGC normalization |\n| `--binSize` | bamCoverage, multiBamSummary | 50 | 1–10000 | Resolution in bp; smaller = larger files |\n| `--extendReads` | bamCoverage, bamCompare | False | integer (bp) | Extend to fragment length (ChIP: YES, RNA: NO) |\n| `--ignoreDuplicates` | Most tools | False | True\u002FFalse | Remove PCR duplicates |\n| `--numberOfProcessors` | Most tools | 1 | 1–N cores | Parallel processing |\n| `--operation` | bamCompare | log2 | log2, ratio, subtract, add, mean, reciprocal_ratio | Sample comparison operation |\n| `--referencePoint` | computeMatrix | TSS | TSS, TES, center | Anchor point for reference-point mode |\n| `-b` \u002F `-a` | computeMatrix | 500 | 100–10000 bp | Upstream\u002Fdownstream distance from reference |\n| `--kmeans` | plotHeatmap | None | 1–20 | Number of clusters for heatmap rows |\n| `--minMappingQuality` | Most tools | None | 0–60 | Minimum alignment quality filter |\n\n## Best Practices\n\n1. **Always extend reads for ChIP-seq**: Use `--extendReads 200` (or actual fragment length) — ChIP fragments are longer than reads.\n\n2. **Never extend reads for RNA-seq**: `--extendReads` would span splice junctions, creating artifacts.\n\n3. **Anti-pattern — comparing with different normalizations**: Always use the same normalization method across all samples in a comparison.\n\n4. **Use `--region` for parameter testing**: Test on a single chromosome (`--region chr1:1-10000000`) before running on the full genome — saves hours.\n\n5. **Always use `--numberOfProcessors`**: Most tools parallelize well — use all available cores.\n\n6. **Anti-pattern — using RPGC without `--effectiveGenomeSize`**: Will silently produce wrong results. Always specify the correct genome size.\n\n7. **Run QC before analysis**: Check fingerprint and correlation before investing time in heatmaps\u002Fprofiles. Poor enrichment means downstream visualizations will be noise.\n\n## Common Recipes\n\n### Recipe: Multi-Sample Correlation Matrix\n\n```bash\n# Compare 6 samples across the genome\nmultiBamSummary bins --bamfiles sample{1..6}.bam \\\n    -o all_samples.npz --binSize 10000 -p 8 \\\n    --labels S1 S2 S3 S4 S5 S6\n\n# Pearson correlation heatmap\nplotCorrelation -in all_samples.npz --corMethod pearson \\\n    --whatToShow heatmap -o pearson_corr.png --plotNumbers\n\n# Spearman correlation + PCA\nplotCorrelation -in all_samples.npz --corMethod spearman \\\n    --whatToShow heatmap -o spearman_corr.png\nplotPCA -in all_samples.npz -o pca.png\n```\n\n### Recipe: Gene Body Coverage Profile\n\n```bash\n# Scale-regions mode for gene body analysis\ncomputeMatrix scale-regions -S sample.bw -R genes.bed \\\n    -b 1000 -a 1000 --regionBodyLength 5000 -o gene_body.gz -p 8\nplotProfile -m gene_body.gz -o gene_body_profile.png \\\n    --plotType lines --perGroup\n```\n\n## Troubleshooting\n\n| Problem | Cause | Solution |\n|---------|-------|----------|\n| `BAM index not found` | Missing `.bai` file | Run `samtools index input.bam` |\n| Out of memory | Large genome, small bin size | Increase `--binSize`; process with `--region chr1` |\n| Very slow processing | Single-threaded execution | Add `-p 8` (or available cores) |\n| bigWig files very large | Bin size too small | Increase `--binSize 50` or larger |\n| Flat ChIP fingerprint | Poor ChIP enrichment | Biological issue — consider repeating ChIP experiment |\n| RNA-seq artifacts at exon boundaries | `--extendReads` used with RNA-seq | Remove `--extendReads` for RNA-seq data |\n| ATAC-seq signal offset | Missing Tn5 correction | Apply `alignmentSieve --ATACshift` before analysis |\n| Mismatched genome assemblies | BAM and BED use different assemblies | Verify both use same genome build (hg38 vs hg19) |\n\n## Related Skills\n\n- **pysam-genomic-files** — programmatic BAM\u002FVCF manipulation for custom filtering before deepTools\n- **matplotlib-scientific-plotting** — customize deepTools output figures beyond built-in options\n\n## References\n\n- [deepTools documentation](https:\u002F\u002Fdeeptools.readthedocs.io\u002F) — official user guide and tool reference\n- [deepTools Galaxy](https:\u002F\u002Fdeeptools.ie-freiburg.mpg.de\u002F) — web-based interface\n- Ramirez et al. (2016) \"deepTools2: a next generation web server for deep-sequencing data analysis\" — [Nucleic Acids Research](https:\u002F\u002Fdoi.org\u002F10.1093\u002Fnar\u002Fgkw257)\n","# deepTools — NGS Data Analysis Toolkit\n\n## Overview\n\ndeepTools is a command-line toolkit for processing and visualizing high-throughput sequencing data. It converts BAM alignments to normalized coverage tracks (bigWig), performs quality control (correlation, PCA, fingerprint), and generates publication-quality heatmaps and profile plots around genomic features. Supports ChIP-seq, RNA-seq, ATAC-seq, and MNase-seq.\n\n## When to Use\n\n- Converting BAM files to normalized bigWig coverage tracks\n- Comparing ChIP-seq treatment vs input control (log2 ratio tracks)\n- Assessing sample quality: replicate correlation, PCA, coverage depth\n- Evaluating ChIP enrichment strength (fingerprint plots)\n- Creating heatmaps and profile plots around TSS, peaks, or other genomic regions\n- Analyzing ATAC-seq data with Tn5 offset correction\n- Generating strand-specific RNA-seq coverage tracks\n- Use **omics-plotting** SKILL for custom figures from exported score matrices; standard signal heatmaps\u002Fprofiles use deeptools' own `plotHeatmap`\u002F`plotProfile`\n- For **read alignment**, use STAR, BWA, or bowtie2 instead\n- For **peak calling**, use MACS2 or HOMER instead\n- For **BAM\u002FVCF file manipulation**, use pysam instead\n\n## Prerequisites\n\n```bash\npip install deeptools\n# Verify installation\nbamCoverage --version\n```\n\n**Input requirements**: BAM files must be sorted and indexed (`.bai` file present). Generate index with `samtools index input.bam`. BED files for genomic regions (genes, peaks) in standard 3+ column format.\n\n## Pre-flight Interview\n\nSettle these with the user before writing any analysis code.\n\n```yaml\ndecisions:\n  - id: D1\n    param: normalizationMethod\n    kind: required\n    source: user\n    ask: \"How should coverage be scaled so tracks from different samples can be compared - by read depth, by genome coverage, or not at all?\"\n    default: \"none - raw coverage, comparable only within one sample\"\n\n  - id: D2\n    param: effectiveGenomeSize\n    kind: derived\n    source: upstream\n    depends_on: [D1]\n    ask: \"Which assembly's mappable size should the coverage normalization use?\"\n    default: \"looked up for the alignment reference\"\n    skip_if: \"normalization does not require a genome size\"\n\n  - id: D3\n    param: readExtension\n    kind: required\n    source: user\n    ask: \"Should reads be extended to the sequenced fragment length? Correct for ChIP and ATAC, wrong for spliced RNA.\"\n    default: \"not extended\"\n\n  - id: D4\n    param: duplicateHandling\n    kind: required\n    source: user\n    ask: \"Should reads flagged as duplicates be ignored when building coverage?\"\n    default: \"included\"\n\n  - id: D5\n    param: mappingQualityFloor\n    kind: required\n    source: user\n    ask: \"Below what mapping confidence should reads be excluded from the signal?\"\n    default: \"no filter\"\n\n  - id: D6\n    param: binSize\n    kind: optional\n    source: user\n    ask: \"At what resolution should signal be summarized?\"\n    default: \"50 bp\"\n\n  - id: D7\n    param: comparisonOperation\n    kind: optional\n    source: user\n    ask: \"When comparing two samples, should the track hold a log ratio, a plain ratio, or a difference?\"\n    default: \"log2 ratio\"\n\n  - id: D8\n    param: profileAnchor\n    kind: optional\n    source: user\n    ask: \"Should profiles be anchored on feature starts, ends, centres, or scaled across whole features?\"\n    default: \"feature start, 500 bp either side\"\n\n  - id: D9\n    param: processors\n    kind: never_ask\n    source: data\n    reason: \"Affects runtime only, not the signal\"\n    default: \"min(8, available_cores)\"\n```\n\nD1 and D3 are the pair that makes tracks comparable or quietly misleading.\nUnnormalized tracks put the deeper-sequenced sample higher everywhere, which\nreads as biology on a genome browser; extending RNA-seq reads to a fragment\nlength fills introns with signal that was never sequenced.\n\n## Quick Start\n\n```bash\n# Convert BAM to normalized bigWig\nbamCoverage --bam sample.bam --outFileName sample.bw \\\n    --normalizeUsing RPGC --effectiveGenomeSize 2913022398 \\\n    --binSize 10 --numberOfProcessors 8\n\n# Create heatmap around TSS\ncomputeMatrix reference-point -S sample.bw -R genes.bed \\\n    -b 3000 -a 3000 --referencePoint TSS -o matrix.gz\nplotHeatmap -m matrix.gz -o heatmap.png --colorMap RdBu\n```\n\n## Core API\n\n### 1. BAM to Coverage Conversion\n\nConvert BAM alignments to normalized coverage tracks (bigWig or bedGraph).\n\n```bash\n# Basic conversion with RPGC normalization\nbamCoverage --bam input.bam --outFileName output.bw \\\n    --normalizeUsing RPGC --effectiveGenomeSize 2913022398 \\\n    --binSize 10 --numberOfProcessors 8 \\\n    --extendReads 200 --ignoreDuplicates\n\n# CPM normalization (simpler, no genome size needed)\nbamCoverage --bam input.bam --outFileName output.bw \\\n    --normalizeUsing CPM --binSize 10 -p 8\n\n# RNA-seq: strand-specific coverage\nbamCoverage --bam rnaseq.bam --outFileName forward.bw \\\n    --filterRNAstrand forward --normalizeUsing CPM -p 8\n# IMPORTANT: Never use --extendReads for RNA-seq (spans splice junctions)\n```\n\n### 2. Sample Comparison\n\nCompare treatment vs control or generate ratio tracks.\n\n```bash\n# Log2 ratio: treatment \u002F control\nbamCompare -b1 treatment.bam -b2 control.bam -o log2ratio.bw \\\n    --operation log2 --scaleFactorsMethod readCount \\\n    --extendReads 200 -p 8\n\n# Subtract control from treatment\nbamCompare -b1 treatment.bam -b2 control.bam -o subtract.bw \\\n    --operation subtract --scaleFactorsMethod readCount\n```\n\n### 3. Quality Control\n\nAssess sample quality, replicate concordance, and enrichment strength.\n\n```bash\n# Sample correlation heatmap\nmultiBamSummary bins --bamfiles rep1.bam rep2.bam rep3.bam \\\n    -o counts.npz --binSize 10000 -p 8\nplotCorrelation -in counts.npz --corMethod pearson \\\n    --whatToShow heatmap -o correlation.png\n# Good: replicates cluster with r > 0.9\n\n# PCA of samples\nplotPCA -in counts.npz -o pca.png --plotTitle \"Sample PCA\"\n\n# ChIP enrichment fingerprint\nplotFingerprint -b input.bam chip.bam -o fingerprint.png \\\n    --extendReads 200 --ignoreDuplicates\n# Good ChIP: steep rise curve; flat diagonal = poor enrichment\n\n# Coverage depth assessment\nplotCoverage -b sample.bam -o coverage.png --ignoreDuplicates -p 8\n\n# Fragment size distribution (paired-end)\nbamPEFragmentSize -b sample.bam -o fragsize.png\n```\n\n### 4. Heatmaps and Profile Plots\n\nVisualize signal around genomic features (TSS, peaks, gene bodies).\n\n```bash\n# Reference-point mode: signal around TSS\ncomputeMatrix reference-point -S chip.bw -R genes.bed \\\n    -b 3000 -a 3000 --referencePoint TSS -o matrix.gz -p 8\n\n# Scale-regions mode: signal across gene bodies\ncomputeMatrix scale-regions -S chip.bw -R genes.bed \\\n    -b 1000 -a 1000 --regionBodyLength 5000 -o matrix.gz -p 8\n\n# Generate heatmap\nplotHeatmap -m matrix.gz -o heatmap.png \\\n    --colorMap RdBu --kmeans 3 --sortUsing mean\n\n# Generate profile plot\nplotProfile -m matrix.gz -o profile.png \\\n    --plotType lines --colors blue red\n\n# Multiple signal files: compare marks\ncomputeMatrix reference-point -S h3k4me3.bw h3k27me3.bw -R genes.bed \\\n    -b 3000 -a 3000 --referencePoint TSS -o multi_matrix.gz\nplotHeatmap -m multi_matrix.gz -o multi_heatmap.png\n```\n\n### 5. Read Filtering and Processing\n\nFilter reads before analysis or correct for assay-specific biases.\n\n```bash\n# Filter by mapping quality and fragment size\nalignmentSieve --bam input.bam --outFile filtered.bam \\\n    --minMappingQuality 10 --minFragmentLength 150 \\\n    --maxFragmentLength 700\n\n# ATAC-seq: apply Tn5 offset correction (+4\u002F-5 bp shift)\nalignmentSieve --bam atac.bam --outFile shifted.bam --ATACshift\n# Then index: samtools index shifted.bam\n\n# GC bias correction (only if significant bias detected)\ncomputeGCBias -b input.bam --effectiveGenomeSize 2913022398 \\\n    -g genome.2bit --GCbiasFrequenciesFile gc_freq.txt -p 8\ncorrectGCBias -b input.bam --effectiveGenomeSize 2913022398 \\\n    --GCbiasFrequenciesFile gc_freq.txt -o corrected.bam\n```\n\n### 6. Enrichment Analysis\n\nQuantify signal enrichment at specific regions.\n\n```bash\n# Signal enrichment at peak regions\nplotEnrichment -b chip.bam input.bam --BED peaks.bed \\\n    -o enrichment.png --ignoreDuplicates -p 8\n```\n\n## Key Concepts\n\n### Normalization Methods\n\n| Method | Formula | When to Use | Requires |\n|--------|---------|-------------|----------|\n| **RPGC** | 1× genome coverage | ChIP-seq, ATAC-seq | `--effectiveGenomeSize` |\n| **CPM** | Counts per million | Any assay, quick comparison | Nothing |\n| **RPKM** | Per kb per million | RNA-seq gene-level | Nothing |\n| **BPM** | Bins per million | Similar to CPM | Nothing |\n| **None** | Raw counts | Not recommended for comparison | Nothing |\n\n**Rule**: Use RPGC for ChIP-seq\u002FATAC-seq (accounts for genome size). Use CPM for quick comparisons. Use RPKM for RNA-seq gene-level analysis.\n\n### Effective Genome Sizes\n\n| Organism | Assembly | Effective Size |\n|----------|----------|---------------|\n| Human | GRCh38\u002Fhg38 | 2,913,022,398 |\n| Mouse | GRCm38\u002Fmm10 | 2,652,783,500 |\n| Zebrafish | GRCz11 | 1,368,780,147 |\n| *Drosophila* | dm6 | 142,573,017 |\n| *C. elegans* | ce10\u002Fce11 | 100,286,401 |\n\n### computeMatrix Modes\n\n| Mode | Use When | Key Params |\n|------|----------|------------|\n| `reference-point` | Signal around a fixed point (TSS, peak summit) | `-b`, `-a`, `--referencePoint` |\n| `scale-regions` | Signal across variable-length features (gene bodies) | `-b`, `-a`, `--regionBodyLength` |\n\n## Common Workflows\n\n### Workflow: ChIP-seq QC and Visualization\n\n```bash\n#!\u002Fbin\u002Fbash\n# Complete ChIP-seq QC + visualization pipeline\nCHIP=\"chip.bam\"\nINPUT=\"input.bam\"\nGENES=\"genes.bed\"\nPEAKS=\"peaks.bed\"\nGSIZE=2913022398\nTHREADS=8\n\n# 1. QC: sample correlation\nmultiBamSummary bins --bamfiles $INPUT $CHIP -o summary.npz -p $THREADS\nplotCorrelation -in summary.npz --corMethod pearson --whatToShow heatmap -o correlation.png\n\n# 2. QC: enrichment fingerprint\nplotFingerprint -b $INPUT $CHIP -o fingerprint.png --extendReads 200 --ignoreDuplicates\n\n# 3. Convert to normalized bigWig\nbamCoverage --bam $CHIP --outFileName chip.bw --normalizeUsing RPGC \\\n    --effectiveGenomeSize $GSIZE --extendReads 200 --ignoreDuplicates -p $THREADS\n\n# 4. Log2 ratio track\nbamCompare -b1 $CHIP -b2 $INPUT -o log2ratio.bw --operation log2 \\\n    --scaleFactorsMethod readCount --extendReads 200 -p $THREADS\n\n# 5. Heatmap at TSS\ncomputeMatrix reference-point -S chip.bw log2ratio.bw -R $GENES \\\n    -b 3000 -a 3000 --referencePoint TSS -o tss_matrix.gz -p $THREADS\nplotHeatmap -m tss_matrix.gz -o tss_heatmap.png --colorMap RdBu --kmeans 3\n\n# 6. Profile at peaks\ncomputeMatrix reference-point -S chip.bw -R $PEAKS \\\n    -b 2000 -a 2000 -o peak_matrix.gz -p $THREADS\nplotProfile -m peak_matrix.gz -o peak_profile.png\n```\n\n### Workflow: ATAC-seq Analysis\n\n```bash\n#!\u002Fbin\u002Fbash\nATAC=\"atac.bam\"\nPEAKS=\"atac_peaks.bed\"\nGSIZE=2913022398\nTHREADS=8\n\n# 1. Apply Tn5 offset correction (+4\u002F-5 bp)\nalignmentSieve --bam $ATAC --outFile shifted.bam --ATACshift -p $THREADS\nsamtools index shifted.bam\n\n# 2. Generate RPGC-normalized coverage\nbamCoverage --bam shifted.bam --outFileName atac.bw \\\n    --normalizeUsing RPGC --effectiveGenomeSize $GSIZE \\\n    --binSize 5 --extendReads -p $THREADS\n\n# 3. Check nucleosome periodicity (expect 200bp\u002F400bp peaks)\nbamPEFragmentSize -b shifted.bam -o fragsize.png \\\n    --maxFragmentLength 1000 --binSize 1\n\n# 4. Heatmap at ATAC peaks\ncomputeMatrix reference-point -S atac.bw -R $PEAKS \\\n    -b 2000 -a 2000 -o atac_matrix.gz -p $THREADS\nplotHeatmap -m atac_matrix.gz -o atac_heatmap.png --colorMap Blues --kmeans 2\n```\n\n## Key Parameters\n\n| Parameter | Tool(s) | Default | Range | Effect |\n|-----------|---------|---------|-------|--------|\n| `--normalizeUsing` | bamCoverage, bamCompare | None | RPGC, CPM, RPKM, BPM, None | Coverage normalization method |\n| `--effectiveGenomeSize` | bamCoverage, bamCompare | — | See table above | Required for RPGC normalization |\n| `--binSize` | bamCoverage, multiBamSummary | 50 | 1–10000 | Resolution in bp; smaller = larger files |\n| `--extendReads` | bamCoverage, bamCompare | False | integer (bp) | Extend to fragment length (ChIP: YES, RNA: NO) |\n| `--ignoreDuplicates` | Most tools | False | True\u002FFalse | Remove PCR duplicates |\n| `--numberOfProcessors` | Most tools | 1 | 1–N cores | Parallel processing |\n| `--operation` | bamCompare | log2 | log2, ratio, subtract, add, mean, reciprocal_ratio | Sample comparison operation |\n| `--referencePoint` | computeMatrix | TSS | TSS, TES, center | Anchor point for reference-point mode |\n| `-b` \u002F `-a` | computeMatrix | 500 | 100–10000 bp | Upstream\u002Fdownstream distance from reference |\n| `--kmeans` | plotHeatmap | None | 1–20 | Number of clusters for heatmap rows |\n| `--minMappingQuality` | Most tools | None | 0–60 | Minimum alignment quality filter |\n\n## Best Practices\n\n1. **Always extend reads for ChIP-seq**: Use `--extendReads 200` (or actual fragment length) — ChIP fragments are longer than reads.\n\n2. **Never extend reads for RNA-seq**: `--extendReads` would span splice junctions, creating artifacts.\n\n3. **Anti-pattern — comparing with different normalizations**: Always use the same normalization method across all samples in a comparison.\n\n4. **Use `--region` for parameter testing**: Test on a single chromosome (`--region chr1:1-10000000`) before running on the full genome — saves hours.\n\n5. **Always use `--numberOfProcessors`**: Most tools parallelize well — use all available cores.\n\n6. **Anti-pattern — using RPGC without `--effectiveGenomeSize`**: Will silently produce wrong results. Always specify the correct genome size.\n\n7. **Run QC before analysis**: Check fingerprint and correlation before investing time in heatmaps\u002Fprofiles. Poor enrichment means downstream visualizations will be noise.\n\n## Common Recipes\n\n### Recipe: Multi-Sample Correlation Matrix\n\n```bash\n# Compare 6 samples across the genome\nmultiBamSummary bins --bamfiles sample{1..6}.bam \\\n    -o all_samples.npz --binSize 10000 -p 8 \\\n    --labels S1 S2 S3 S4 S5 S6\n\n# Pearson correlation heatmap\nplotCorrelation -in all_samples.npz --corMethod pearson \\\n    --whatToShow heatmap -o pearson_corr.png --plotNumbers\n\n# Spearman correlation + PCA\nplotCorrelation -in all_samples.npz --corMethod spearman \\\n    --whatToShow heatmap -o spearman_corr.png\nplotPCA -in all_samples.npz -o pca.png\n```\n\n### Recipe: Gene Body Coverage Profile\n\n```bash\n# Scale-regions mode for gene body analysis\ncomputeMatrix scale-regions -S sample.bw -R genes.bed \\\n    -b 1000 -a 1000 --regionBodyLength 5000 -o gene_body.gz -p 8\nplotProfile -m gene_body.gz -o gene_body_profile.png \\\n    --plotType lines --perGroup\n```\n\n## Troubleshooting\n\n| Problem | Cause | Solution |\n|---------|-------|----------|\n| `BAM index not found` | Missing `.bai` file | Run `samtools index input.bam` |\n| Out of memory | Large genome, small bin size | Increase `--binSize`; process with `--region chr1` |\n| Very slow processing | Single-threaded execution | Add `-p 8` (or available cores) |\n| bigWig files very large | Bin size too small | Increase `--binSize 50` or larger |\n| Flat ChIP fingerprint | Poor ChIP enrichment | Biological issue — consider repeating ChIP experiment |\n| RNA-seq artifacts at exon boundaries | `--extendReads` used with RNA-seq | Remove `--extendReads` for RNA-seq data |\n| ATAC-seq signal offset | Missing Tn5 correction | Apply `alignmentSieve --ATACshift` before analysis |\n| Mismatched genome assemblies | BAM and BED use different assemblies | Verify both use same genome build (hg38 vs hg19) |\n\n## Related Skills\n\n- **pysam-genomic-files** — programmatic BAM\u002FVCF manipulation for custom filtering before deepTools\n- **matplotlib-scientific-plotting** — customize deepTools output figures beyond built-in options\n\n## References\n\n- [deepTools documentation](https:\u002F\u002Fdeeptools.readthedocs.io\u002F) — official user guide and tool reference\n- [deepTools Galaxy](https:\u002F\u002Fdeeptools.ie-freiburg.mpg.de\u002F) — web-based interface\n- Ramirez et al. (2016) \"deepTools2: a next generation web server for deep-sequencing data analysis\" — [Nucleic Acids Research](https:\u002F\u002Fdoi.org\u002F10.1093\u002Fnar\u002Fgkw257)\n",{"name":5,"license":15,"description":7},"master","fd76f882a04e445e899d5cfb2732f2105ea054ee","skills\u002Fawesome-skills\u002Fdeeptools-ngs-analysis",0,"https:\u002F\u002Fgithub.com\u002Fbg-szy\u002FTOP-SKILLS","https:\u002F\u002Fbg-szy.github.io\u002FTOP-SKILLS\u002F","https:\u002F\u002Fgithub.com\u002Fbg-szy","https:\u002F\u002Fwww.ecust.edu.cn\u002F","a student of East China University of Science and Technology","2026-11-12 05:55:03",{"source":8,"skillName":5,"commands":35,"prompt":45,"zipAvailable":46},[36,39,42],{"tool":37,"command":38},"npx","npx skills add bg-szy\u002FTOP-SKILLS --skill deeptools-ngs-analysis",{"tool":40,"command":41},"bunx","bunx skills add bg-szy\u002FTOP-SKILLS --skill deeptools-ngs-analysis",{"tool":43,"command":44},"pnpm","pnpm dlx skills add bg-szy\u002FTOP-SKILLS --skill deeptools-ngs-analysis","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fbg-szy\u002FTOP-SKILLS\u002Fblob\u002Fmaster\u002Fskills\u002Fawesome-skills\u002Fdeeptools-ngs-analysis\u002FSKILL.md",true,[],[49,57,64,73,81,89],{"skillNo":50,"name":51,"nameZh":6,"description":52,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":53,"licenseFileUrl":6,"sourceHtmlUrl":54,"categories":55,"keywords":56,"publishedAt":19},"01M748C5DS5BQBVBMG22FCGG34","branding","When the user wants to define, audit, or apply brand strategy—purpose, values, positioning, storytelling, voice, narrative (not only visuals). Also use when the user mentions \"brand strategy\", \"brand story\", \"brand storytelling\" or \"brand voice\". For typography, colors, design tokens, and frontend visuals, use brand-visual-generator.","MIT","https:\u002F\u002Fgithub.com\u002Fbg-szy\u002FTOP-SKILLS\u002Fblob\u002Fmaster\u002Fskills\u002Fsuperskills\u002Fbranding\u002FSKILL.md",[],[],{"skillNo":58,"name":59,"nameZh":6,"description":60,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":53,"licenseFileUrl":6,"sourceHtmlUrl":61,"categories":62,"keywords":63,"publishedAt":19},"01M748C1GXJ9WRKP18X45DKP6G","brand-visual-generator","When the user wants to define, audit, or apply visual identity (typography, colors, spacing, design tokens, frontend aesthetics). Also use when the user mentions \"brand style guide\", \"visual identity\", \"design system\" or \"typography\". For brand story, positioning, and voice, use branding.","https:\u002F\u002Fgithub.com\u002Fbg-szy\u002FTOP-SKILLS\u002Fblob\u002Fmaster\u002Fskills\u002Fsuperskills\u002Fbrand-visual-generator\u002FSKILL.md",[],[],{"skillNo":65,"name":66,"nameZh":6,"description":67,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":68,"licenseFileUrl":69,"sourceHtmlUrl":70,"categories":71,"keywords":72,"publishedAt":19},"01M747T565TFEP3RAVWM0Y899Y","mcp-builder","Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node\u002FTypeScript (MCP SDK).","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fbg-szy\u002FTOP-SKILLS\u002Fblob\u002Fmaster\u002Fskills\u002Fskills\u002Fmcp-builder\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fbg-szy\u002FTOP-SKILLS\u002Fblob\u002Fmaster\u002Fskills\u002Fskills\u002Fmcp-builder\u002FSKILL.md",[],[],{"skillNo":74,"name":75,"nameZh":6,"description":76,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":68,"licenseFileUrl":77,"sourceHtmlUrl":78,"categories":79,"keywords":80,"publishedAt":19},"01M747RAJGMBZ2QN4563STB5SH","frontend-design","Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.","https:\u002F\u002Fgithub.com\u002Fbg-szy\u002FTOP-SKILLS\u002Fblob\u002Fmaster\u002Fskills\u002Fskills\u002Ffrontend-design\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fbg-szy\u002FTOP-SKILLS\u002Fblob\u002Fmaster\u002Fskills\u002Fskills\u002Ffrontend-design\u002FSKILL.md",[],[],{"skillNo":82,"name":83,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":68,"licenseFileUrl":85,"sourceHtmlUrl":86,"categories":87,"keywords":88,"publishedAt":19},"01M747NHAY5BE9GXEB31H255R1","claude-api","Reference for the Claude API \u002F Anthropic SDK — model ids, pricing, params, streaming, tool use, MCP, agents, caching, token counting, model migration.\nTRIGGER — read BEFORE opening the target file; don't skip because it \"looks like a one-liner\" — whenever: the prompt names Claude\u002FAnthropic in any form (Claude, Anthropic, Fable, Opus, Sonnet, Haiku, `anthropic`, `@anthropic-ai`, `claude-*`, `us.anthropic.*`, `[1m]`); the user asks about an LLM (pricing\u002Fmodel choice\u002Flimits\u002Fcaching) — never answer from memory; OR the task is LLM-shaped with provider unstated (agent\u002FMCP\u002Ftool-definition\u002Fmulti-agent\u002FRAG\u002FLLM-judge\u002Fcomputer-use; generate\u002Fsummarize\u002Fextract\u002Fclassify\u002Frewrite\u002Fconverse over NL; debugging refusals\u002Fcutoffs\u002Fstreaming\u002Ftool-calls\u002Ftokens).\nSKIP only when another provider is being worked on (overrides all triggers): OpenAI\u002FGPT\u002FGemini\u002FLlama\u002FMistral\u002FCohere\u002FOllama named in the query; OR `grep -rE 'openai|langchain_openai|google.generativeai|genai|mistralai|cohere|ollama'` over the project hits (run this grep FIRST if no provider named — don't Read the file).","https:\u002F\u002Fgithub.com\u002Fbg-szy\u002FTOP-SKILLS\u002Fblob\u002Fmaster\u002Fskills\u002Fskills\u002Fclaude-api\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fbg-szy\u002FTOP-SKILLS\u002Fblob\u002Fmaster\u002Fskills\u002Fskills\u002Fclaude-api\u002FSKILL.md",[],[],{"skillNo":90,"name":91,"nameZh":6,"description":92,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":53,"licenseFileUrl":93,"sourceHtmlUrl":94,"categories":95,"keywords":96,"publishedAt":19},"01M73WM4TPHEJ57D7G2AZ0ABVT","inbox-guardian-for-gmail","Review a personal Gmail inbox with local, owner-approved spam rules. Use for audit-first quarantine, Trash, repeated-evidence sender learning, and header review. Do not use for automatic unsubscribe requests or unreviewed mailbox actions.","https:\u002F\u002Fgithub.com\u002Fbg-szy\u002FTOP-SKILLS\u002Fblob\u002Fmaster\u002Fskills\u002Fmarketplace\u002Finbox-guardian-for-gmail\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fbg-szy\u002FTOP-SKILLS\u002Fblob\u002Fmaster\u002Fskills\u002Fmarketplace\u002Finbox-guardian-for-gmail\u002FSKILL.md",[],[]]