Agent skill

bio-atac-seq-consensus-peakset

Build a differential-ready consensus peakset from per-replicate ATAC-seq peaks using iterative overlap removal, fixed-width re-centering, and majority-rule overlap. Use when generating a stable peak coordinate system for downstream differential accessibility, ML feature engineering, cross-sample comparison, or fixed-width peak counts; covers Corces 2018 iterative overlap (501 bp), DiffBind summit re-centering, and ENCODE consistency rules.

BioTender-maxgithub.com/BioTender-maxGitHub ↗
claude-codeships scriptsNOASSERTION
Install
npx skills add BioTender-max/awesome-bio-agent-skills --skill consensus-peakset --agent claude-code

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

Facts
Files in the skill folder: 3
SKILL.md size: 18 KB
Bundled scripts: yes
Path: skills/bioskills/consensus-peakset/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

Builds a differential-ready consensus peakset from per-replicate ATAC-seq peaks using iterative overlap removal, fixed-width re-centering, and majority-rule overlap. It guides when to use fixed-width consensus for cross-sample comparison and ML feature engineering, covering Corces 2018 iterative overlap (501 bp), and DiffBind summit re-centering.

How it works

The skill describes constructing a non-redundant, fixed-width peakset by pooling peaks, re-centering on summits, extending to a fixed width (typically 501 bp), sorting by signal, and greedily selecting non-overlapping peaks. It provides concrete steps and command patterns:

  • Pool all peaks, re-center on summits, extend to fixed width (501 bp) and filter by genome bounds.
  • Sort by signalValue descending.
  • Iteratively keep peaks that do not overlap previously kept peaks, discarding overlaps, to produce consensus.
  • Output is a fixed-width consensus bed; it also presents a concrete shell script and an accompanying Python snippet for re-centering and a brief R/GenomicRanges approach as alternatives.
  • It lists command-line tools to use (bedtools merge, bedtools multiinter, etc.), and notes that a greedy non-overlap approach is the canonical Corces 2018 method with a 501 bp width.

When to use it

Use when you need a stable, fixed-width peak coordinate system for cross-sample counting, differential accessibility analyses, ML features, or multi-sample comparisons. It cites ENCODE consistency rules and Corces 2018 standards as benchmarks and provides guidance on when to apply this strategy versus alternatives like naive union or per-condition approaches.

What it can touch

The skill references and uses tools such as bedtools (merge, multiinter), Python (pybedtools), and R (DiffBind, GenomicRanges), along with shell scripting and optional alternative implementations. It outlines specific sequences and scripts for implementing the consensus peakset construction.

Caveats

It warns that wrong width or overlap rules propagate to downstream analyses and that width bias can affect counts. It notes that strategies evolve and recommends verifying against current ENCODE ATAC standards and Corces 2018 before finalizing a pipeline. It includes limitations about when summit information is required (for certain methods) and cautions about wide vs narrow peaks impacting width integrity.

From the SKILL.md

## Version Compatibility Reference examples tested with: bedtools 2.31+, samtools 1.19+, BEDOPS 2.4.41+, GenomicRanges 1.54+, DiffBind 3.12+, Subread 2.0+ (featureCounts), pybedtools 0.10+. Before using code patterns, verify installed versions match. If versions differ: - Python: `pip show <package>` then `help(module.function)` to check signatures - R: `packageVersion('<pkg>')` then `?function_name` to verify parameters - CLI: `<tool> --version` then `<tool> --help` to confirm flags If code throws unexpected errors, introspect the installed package and adapt rather than retrying. # Consensus Peakset Construction **"Build a single peakset I can count reads against across all my samples"** -> Combine per-replicate or per-condition peak calls into a non-redundant, fixed-width set of regions. The strategy chosen drives FDR calibration, peak-width fairness, and reproducibility downstream. - CLI: `bedtools merge` (simple union) and `bedtools multiinter -j` (per-sample membership) - CLI: Corces 2018 iterative overlap removal (custom shell) - R: `DiffBind::dba.count(summits=250)` (built-in fixed-width) - Python: `pybedtools` for programmatic merging The peakset choice is rarely default-co

What's inside
Steps it walks through
  1. Version Compatibility
  2. Why a Consensus Peakset Matters
  3. Strategy Taxonomy
  4. Iterative Overlap Removal (Corces 2018)
  5. Per-Strategy Failure Modes
  6. Naive union -- Width-driven differential
  7. Intersection (peak in all reps) -- Loses condition-specific biology
  8. Majority rule (DiffBind default-ish) -- Borderline peaks dropped
  9. Width-controlled extension -- Shifts off summit
  10. IDR-filtered union -- Computational cost; threshold mismatch
  11. Decision Tree by Goal
  12. Reconciliation Across Methods
  13. Width-Re-centering Patterns
  14. Per-Condition Consensus Then Union
Ships with 2 files
  • examples/iterative_overlap.sh
  • usage-guide.md
Commands it runs
Corces 2018 iterative overlap removal
awk -v w=$WIDTH_HALF 'BEGIN{OFS="\t"}
awk '$2 >= 0' | \
bedtools slop -i - -g $GENOME_SIZES -b 0 | \
sort -k1,1 -k2,2n > pooled_recentered.bed
sort -k5,5gr pooled_recentered.bed > pooled_by_sig.bed
python3 - <<'EOF'
sort -k1,1 -k2,2n consensus_iterative.bed > consensus_final.bed
echo "Consensus peakset: $(wc -l < consensus_final.bed) fixed-width 501bp peaks"
For each condition, build a within-condition consensus first
More from awesome-bio-agent-skills
All skills →
About this skill
What does the bio-atac-seq-consensus-peakset skill do?

Build a differential-ready consensus peakset from per-replicate ATAC-seq peaks using iterative overlap removal, fixed-width re-centering, and majority-rule overlap. Use when generating a stable peak coordinate system for downstream differential accessibility, ML feature engineering, cross-sample comparison, or fixed-width peak counts; covers Corces 2018 iterative overlap (501 bp), DiffBind summit re-centering, and ENCODE consistency rules.

How do I install it?

Run `npx skills add BioTender-max/awesome-bio-agent-skills --skill consensus-peakset --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