roary-pangenome
Compute the bacterial pan-genome from Prokka/Bakta GFF3 annotations with Roary's CD-HIT + BLAST + MCL clustering pipeline. Builds gene presence/absence matrices, core/soft-core/shell/cloud partitions, multi-FASTA core gene alignments (with `-e`), and a pan-genome reference. Use Panaroo for higher-accuracy pan-genomes from highly fragmented assemblies, PIRATE for paralog-aware clustering, or PPanGGOLiN for graph-based partitioning.
npx skills add BioTender-max/awesome-bio-agent-skills --skill roary-pangenome --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
Roary Pan-Genome Pipeline processes per-sample GFF3 annotations (Prokka or Bakta) to cluster genes into orthologous families, generate gene presence/absence matrices, and categorize genes into core, soft-core, shell, and cloud partitions. It can also extract a concatenated core-gene alignment and optionally build a pan-genome reference. The workflow supports using Panaroo for fragmented assemblies, PIRATE for paralog-aware clustering, or PPanGGOLiN for graph-based partitioning.
How it works
The skill describes a full Roary-based workflow:
- Install Roary and verify dependencies (Roary ≥ 3.13, CD-HIT, BLAST+, MCL, BEDTools, MAFFT, FastTree; Python parsing tools).
- Prepare per-sample GFF3 files with embedded FASTA blocks; ensure each GFF3 filename becomes the sample column header.
- Run Roary with options to extract a core gene alignment (-e) and use MAFFT (--mafft), with parallelism (-p) and identity/cutoff parameters (-i, -cd).
- Output includes gene_presence_absence.csv and core_gene_alignment.aln among others; parse the matrix to get a binary presence/absence per genome and compute pan-genome partitions: core (≥99%), soft-core (95–99%), shell (15–95%), cloud (<15%).
- Visualize distributions via frequency histogram and pie chart, and optionally build a phylogenetic tree from the core alignment using FastTree.
- Produce Roary’s built-in plots via a roary_plots.py helper and compute per-genome accessory gene counts (cloud/shell proportions).
- Provides common recipes for re-running alignment, lowering identity thresholds for broader clustering, subsetting strains, and cross-tabulating accessory genes against metadata.
When to use it
- When computing a pan-genome from a set of bacterial isolate annotations (10–10,000 genomes).
- To produce a gene_presence_absence.csv matrix for GWAS or core-gene phylogenetics.
- To build a concatenated core-gene multi-FASTA alignment for phylogenetic trees.
- To generate a pan-genome reference FASTA.
- For comparative genomics across closely related strains where >95% identity is expected.
- To substitute with Panaroo for highly fragmented assemblies, PIRATE for paralog-aware clustering, or PPanGGOLiN for graph-based partitioning.
What it can touch
- Software: Roary, CD-HIT, BLAST+, MCL, BEDTools, MAFFT, FastTree, FastTree-related tools, Python with pandas/matplotlib/seaborn/biopython/dendropy.
- Input: per-sample GFF3 files with embedded FASTA blocks (Prokka/Bakta outputs).
- Outputs: gene_presence_absence.csv, core_gene_alignment.aln, core_gene_tree.nwk, and various Roary-generated summary files and plots.
Caveats
- Requires Roary and several bioinformatics dependencies; the workflow emphasizes validation steps (e.g., roary --version outputs 3.13.0) and environment checks before installation.
- The description notes alternative tools (Panaroo, PIRATE, PPanGGOLiN) for specific scenarios, but does not guarantee improved results in all contexts.
- The license is GPL-3.0, which may impose compliance requirements for downstream use and distribution.
# Roary Pan-Genome Pipeline ## Overview Roary is a high-throughput pan-genome pipeline for prokaryotes that takes per-sample GFF3 annotations (typically from Prokka or Bakta) and produces a clustered gene presence/absence matrix across the entire input set. It first reduces redundancy with CD-HIT iterative clustering, then performs an all-vs-all BLASTP within each pre-cluster, and finally applies MCL graph clustering to define orthologous gene families. The output partitions the gene space into core (≥ 99 %), soft-core (95–99 %), shell (15–95 %), and cloud (< 15 %) genes and optionally builds a concatenated core-gene alignment suitable for phylogenetic inference. ## When to Use - Computing a pan-genome from a set of bacterial isolate annotations (10–10,000 genomes) - Producing a `gene_presence_absence.csv` matrix for downstream GWAS, accessory-gene mining, or core-gene phylogenetics - Building a concatenated core-gene multi-FASTA alignment for ML/Bayesian phylogenetic trees - Generating a pan-genome reference FASTA to use as a non-redundant gene catalog - Comparative genomics across closely related strains where >95 % nucleotide identity is expected - Use **Panaroo** instead when a
- Overview
- When to Use
- Prerequisites
- Quick Start
- Workflow
- Step 1: Install Roary and Verify Dependencies
- Step 2: Prepare Per-Sample GFF3 Files from Prokka or Bakta
- Step 3: Run Roary with Core Gene Alignment
- Step 4: Parse the Gene Presence/Absence Matrix
- Step 5: Visualize the Pan-Genome Frequency Distribution
- Step 6: Build a Phylogenetic Tree from the Core Gene Alignment
- Step 7: Produce Roary's Built-in Summary Plots
- Step 8: Compute Per-Genome Accessory Gene Counts
- Key Parameters
Install Roary via conda/mamba (recommended) mamba install -c conda-forge -c bioconda roary Verify installation roary --version Verify dependent tools which cd-hit blastp mcl bedtools mafft Install Python parsing dependencies pip install pandas matplotlib seaborn biopython dendropy Run Roary on all GFF3 files in current directory; emit core gene alignment roary -e --mafft -p 8 -o pangenome -f roary_out/ *.gff
What does the roary-pangenome skill do?
Compute the bacterial pan-genome from Prokka/Bakta GFF3 annotations with Roary's CD-HIT + BLAST + MCL clustering pipeline. Builds gene presence/absence matrices, core/soft-core/shell/cloud partitions, multi-FASTA core gene alignments (with `-e`), and a pan-genome reference. Use Panaroo for higher-accuracy pan-genomes from highly fragmented assemblies, PIRATE for paralog-aware clustering, or PPanGGOLiN for graph-based partitioning.
How do I install it?
Run `npx skills add BioTender-max/awesome-bio-agent-skills --skill roary-pangenome --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 144 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.
