Agent skill

bio-atac-seq-motif-deviation

Analyze TF motif accessibility variability across samples or single cells using chromVAR. Use when identifying TF motifs whose accessibility correlates with conditions, computing per-sample motif z-scores after matched background correction, comparing to ArchR / Signac equivalents, or distinguishing motif-accessibility signal from per-site footprinting.

BioTender-maxgithub.com/BioTender-maxGitHub ↗
claude-codeNOASSERTION
Install
npx skills add BioTender-max/awesome-bio-agent-skills --skill motif-deviation --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 3
SKILL.md size: 20 KB
Bundled scripts: none
Path: skills/bioskills/motif-deviation/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 135
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

Review
written from the skill's own SKILL.md · Aug 5, 2026

What it does

Analyze TF motif accessibility variability across samples or single cells using chromVAR. Compute per-sample (or per-cell) deviation z-scores for motifs, after background correction for GC content and accessibility, and compare to ArchR / Signac workflows or distinguish motif-accessibility signals from per-site footprinting.

How it works

  • Provides commands and workflows to compute per-sample motif z-scores with chromVAR: Raw deviation = peak accessibility containing the motif minus matched-GC/background; Bias-corrected deviation = Raw deviation divided by SD of background deviations; Z-score = (corrected deviation - mean across cells) / SD across cells.
  • Details integration options: Single-cell via Signac::RunChromVAR() or ArchR::addDeviationsMatrix(); differential motif analysis via limma on the z-score matrix; visualization and interpretation guidance for z-score magnitudes.
  • Includes example R snippets for: building SE from peaks and counts, adding GC bias, filtering, matching motifs (JASPAR), creating background peaks, computing deviations, and extracting z-scores and variability.
  • Describes how to perform differential motif activity with limma and how to use motif matrices within Signac and ArchR pipelines.

When to use it

Use when identifying TF motifs whose accessibility correlates with conditions, computing per-sample motif z-scores after matched background correction, comparing to ArchR / Signac equivalents, or distinguishing motif-accessibility signal from per-site footprinting.

What it can touch

  • chromVAR for bulk or single-cell contexts in R.
  • Signac::RunChromVAR() and related motif tooling.
  • ArchR::addDeviationsMatrix() and motif annotations.
  • limma for differential motif activity testing.

Caveats

  • Notes on compatibility: chromVAR 1.24+ with motifmatchr 1.24+, JASPAR2024 0.99+, TFBSTools 1.40+, BSgenome.Hsapiens.UCSC.hg38 1.4+, SummarizedExperiment 1.32+, limma 3.58+, ggplot2 3.5+; ensure installed versions match.
  • Guidance warns about insufficient peaks or reads (e.g., < 1500 reads/sample or < 5000 peaks) as a failure mode affecting background sampling.
  • Cross-tool differences (JASPAR vs CIS-BP motif databases) can yield different top motifs; re-run with a matched motif set for cross-study comparison.
From the SKILL.md

## Version Compatibility Reference examples tested with: chromVAR 1.24+, motifmatchr 1.24+, JASPAR2024 0.99+, TFBSTools 1.40+, BSgenome.Hsapiens.UCSC.hg38 1.4+, SummarizedExperiment 1.32+, limma 3.58+, ggplot2 3.5+, Matrix 1.6+, ArchR 1.0.2+, Signac 1.13+. Before using code patterns, verify installed versions match. If versions differ: - R: `packageVersion('<pkg>')` then `?function_name` to verify parameters If code throws unexpected errors, introspect the installed package and adapt rather than retrying. # Motif Deviation (chromVAR) **"Which TF motifs explain accessibility variation across my samples or cells?"** -> Compute per-sample (or per-cell) deviation z-scores: how many standard deviations above expectation each TF motif's accessibility falls, controlling for GC content and overall accessibility via matched background peak sets. - R: `chromVAR::computeDeviations(counts, motifs)` -> per-sample z-scores - R: `chromVAR::computeVariability(dev)` -> per-motif variance ranking - Single-cell alternative: `Signac::RunChromVAR()` (wrapper with matched defaults) or `ArchR::addDeviationsMatrix()` chromVAR answers a different question than footprinting: footprinting asks "is this speci

What's inside
Steps it walks through
  1. Version Compatibility
  2. What chromVAR Computes
  3. Algorithmic Taxonomy
  4. chromVAR vs Footprinting -- Different Questions
  5. Per-Tool Failure Modes
  6. chromVAR -- Too few peaks or too few reads
  7. chromVAR background peaks -- Default is good, custom requires care
  8. chromVAR on broadly accessible cell types -- Z-scores compressed
  9. chromVAR on bulk samples without enough variation -- All z-scores near zero
  10. Signac::RunChromVAR -- Motif matching mismatch
  11. ArchR::addDeviationsMatrix -- TileMatrix vs PeakMatrix
  12. Decision Tree by Setting
  13. chromVAR Workflow (Bulk)
  14. Differential Motif Activity (limma on z-scores)
Ships with 2 files
  • examples/chromvar_analysis.R
  • usage-guide.md
More from awesome-bio-agent-skills
All skills →
About this skill
What does the bio-atac-seq-motif-deviation skill do?

Analyze TF motif accessibility variability across samples or single cells using chromVAR. Use when identifying TF motifs whose accessibility correlates with conditions, computing per-sample motif z-scores after matched background correction, comparing to ArchR / Signac equivalents, or distinguishing motif-accessibility signal from per-site footprinting.

How do I install it?

Run `npx skills add BioTender-max/awesome-bio-agent-skills --skill motif-deviation --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From BioTender-max/awesome-bio-agent-skills, a repository with 135 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going