Agent skill

ETE Toolkit for Phylogenetic Trees

by davila7 in davila7/claude-code-templates

Guides your agent through building, editing, comparing and drawing phylogenetic trees with the ETE Python toolkit, including orthology calls and NCBI taxonomy lookups.

MITAuto-check: notesResearch & Science

Install ETE Toolkit for Phylogenetic Trees

skills CLI
$ npx skills add davila7/claude-code-templates --skill etetoolkit -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install davila7/claude-code-templates etetoolkit --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/davila7/claude-code-templates.git skills-src && mkdir -p .claude/skills && cp -r skills-src/cli-tool/components/skills/scientific/etetoolkit .claude/skills/etetoolkit && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
etetoolkit
GitHub stars
32k
Used in
12 other repos
Token cost
~4.5k tokens
SKILL.md length
804 words
Files
6 (incl. scripts, references)
Skills in repo
477
Repo updated
First seen
Licence
MIT

At a glance

Guides your agent through building, editing, comparing and drawing phylogenetic trees with the ETE Python toolkit, including orthology calls and NCBI taxonomy lookups.

  • Works in 6 steps: Tree Manipulation and Analysis → Phylogenetic Analysis → NCBI Taxonomy Integration → …
  • Pruning, rooting or collapsing nodes in a Newick tree file
  • SKILL.md covers Overview, Core Capabilities, Installation and Setup and Common Use Cases, plus 4 more sections
  • Runs Python scripts from its folder; calls python, uv and brew

What it does

This skill teaches the agent to use ETE (Environment for Tree Exploration) on phylogenetic and other hierarchical trees. It covers reading and writing Newick, NHX, PhyloXML and NeXML files, walking a tree in different orders, pruning, rooting, collapsing nodes, resolving polytomies, and comparing two trees by Robinson-Foulds distance.

For gene trees it links a tree to a sequence alignment, pulls species names out of gene names and detects duplication and speciation events, so the agent can separate orthologs from paralogs and split gene families. The taxonomy part downloads and caches the NCBI taxonomy database (about 300MB) to convert between taxids and names, fetch lineages and annotate trees. Two helper scripts, `scripts/tree_operations.py` and `scripts/quick_visualize.py`, cover command-line manipulation and quick figures, and three reference notes cover the API, visualization and workflows.

When your agent uses it

  • Pruning, rooting or collapsing nodes in a Newick tree file
  • Telling orthologs from paralogs in a gene family tree
  • Annotating a species tree with NCBI taxonomy lineages
  • Drawing a phylogenetic tree as a PDF or SVG figure

Example prompts

  • “Load tree.nw, prune it to the primate species and report its Robinson-Foulds distance from my reference tree.”
  • “Find the orthologs of species1_gene1 in this gene tree and list the duplication nodes.”
  • “Build a taxonomy tree from these taxids and save it as an SVG.”

Requirements

  • Python with the `ete3` package
  • Network access for the first NCBI taxonomy download (about 300MB)

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Tree Manipulation and Analysis
  2. Phylogenetic Analysis
  3. NCBI Taxonomy Integration
  4. Tree Visualization
  5. Clustering Analysis
  6. Tree Comparison

What it can do on your machine

Read from SKILL.md and the folder at commit 14680ec. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 2 files in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python
    • uv
    • brew
    • apt-get

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use uv, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

ETE Toolkit for Phylogenetic Trees loads about 4.5k tokens when it runs, and up to ~17k if it reads all its reference files. Until then it costs about 46 tokens; SKILL.md has 804 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~46
When it runs · the whole SKILL.md, loaded when a task matches
~4.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~17k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteRuns commands with sudoSKILL.md:368
    sudo apt-get install python3-pyqt5 python3-pyqt5.qtsvg
  • NoteRuns commands with sudoSKILL.md:554
    sudo apt-get install python3-pyqt5 python3-pyqt5.qtsvg

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from davila7/claude-code-templates at commit 14680ec, republished under its MIT licence (© davila7). 804 words, ~4,455 tokens.

Download SKILL.mdSave it as .claude/skills/etetoolkit/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.
name
etetoolkit
description
Phylogenetic tree toolkit (ETE). Tree manipulation (Newick/NHX), evolutionary event detection, orthology/paralogy, NCBI taxonomy, visualization (PDF/SVG), for phylogenomics.

ETE Toolkit Skill

Overview

ETE (Environment for Tree Exploration) is a toolkit for phylogenetic and hierarchical tree analysis. Manipulate trees, analyze evolutionary events, visualize results, and integrate with biological databases for phylogenomic research and clustering analysis.

Core Capabilities

1. Tree Manipulation and Analysis

Load, manipulate, and analyze hierarchical tree structures with support for:

  • Tree I/O: Read and write Newick, NHX, PhyloXML, and NeXML formats
  • Tree traversal: Navigate trees using preorder, postorder, or levelorder strategies
  • Topology modification: Prune, root, collapse nodes, resolve polytomies
  • Distance calculations: Compute branch lengths and topological distances between nodes
  • Tree comparison: Calculate Robinson-Foulds distances and identify topological differences

Common patterns:

python
from ete3 import Tree

# Load tree from file
tree = Tree("tree.nw", format=1)

# Basic statistics
print(f"Leaves: {len(tree)}")
print(f"Total nodes: {len(list(tree.traverse()))}")

# Prune to taxa of interest
taxa_to_keep = ["species1", "species2", "species3"]
tree.prune(taxa_to_keep, preserve_branch_length=True)

# Midpoint root
midpoint = tree.get_midpoint_outgroup()
tree.set_outgroup(midpoint)

# Save modified tree
tree.write(outfile="rooted_tree.nw")

Use scripts/tree_operations.py for command-line tree manipulation:

bash
# Display tree statistics
python scripts/tree_operations.py stats tree.nw

# Convert format
python scripts/tree_operations.py convert tree.nw output.nw --in-format 0 --out-format 1

# Reroot tree
python scripts/tree_operations.py reroot tree.nw rooted.nw --midpoint

# Prune to specific taxa
python scripts/tree_operations.py prune tree.nw pruned.nw --keep-taxa "sp1,sp2,sp3"

# Show ASCII visualization
python scripts/tree_operations.py ascii tree.nw
2. Phylogenetic Analysis

Analyze gene trees with evolutionary event detection:

  • Sequence alignment integration: Link trees to multiple sequence alignments (FASTA, Phylip)
  • Species naming: Automatic or custom species extraction from gene names
  • Evolutionary events: Detect duplication and speciation events using Species Overlap or tree reconciliation
  • Orthology detection: Identify orthologs and paralogs based on evolutionary events
  • Gene family analysis: Split trees by duplications, collapse lineage-specific expansions

Workflow for gene tree analysis:

python
from ete3 import PhyloTree

# Load gene tree with alignment
tree = PhyloTree("gene_tree.nw", alignment="alignment.fasta")

# Set species naming function
def get_species(gene_name):
    return gene_name.split("_")[0]

tree.set_species_naming_function(get_species)

# Detect evolutionary events
events = tree.get_descendant_evol_events()

# Analyze events
for node in tree.traverse():
    if hasattr(node, "evoltype"):
        if node.evoltype == "D":
            print(f"Duplication at {node.name}")
        elif node.evoltype == "S":
            print(f"Speciation at {node.name}")

# Extract ortholog groups
ortho_groups = tree.get_speciation_trees()
for i, ortho_tree in enumerate(ortho_groups):
    ortho_tree.write(outfile=f"ortholog_group_{i}.nw")

Finding orthologs and paralogs:

python
# Find orthologs to query gene
query = tree & "species1_gene1"

orthologs = []
paralogs = []

for event in events:
    if query in event.in_seqs:
        if event.etype == "S":
            orthologs.extend([s for s in event.out_seqs if s != query])
        elif event.etype == "D":
            paralogs.extend([s for s in event.out_seqs if s != query])
3. NCBI Taxonomy Integration

Integrate taxonomic information from NCBI Taxonomy database:

  • Database access: Automatic download and local caching of NCBI taxonomy (~300MB)
  • Taxid/name translation: Convert between taxonomic IDs and scientific names
  • Lineage retrieval: Get complete evolutionary lineages
  • Taxonomy trees: Build species trees connecting specified taxa
  • Tree annotation: Automatically annotate trees with taxonomic information

Building taxonomy-based trees:

python
from ete3 import NCBITaxa

ncbi = NCBITaxa()

# Build tree from species names
species = ["Homo sapiens", "Pan troglodytes", "Mus musculus"]
name2taxid = ncbi.get_name_translator(species)
taxids = [name2taxid[sp][0] for sp in species]

# Get minimal tree connecting taxa
tree = ncbi.get_topology(taxids)

# Annotate nodes with taxonomy info
for node in tree.traverse():
    if hasattr(node, "sci_name"):
        print(f"{node.sci_name} - Rank: {node.rank} - TaxID: {node.taxid}")

Annotating existing trees:

python
# Get taxonomy info for tree leaves
for leaf in tree:
    species = extract_species_from_name(leaf.name)
    taxid = ncbi.get_name_translator([species])[species][0]

    # Get lineage
    lineage = ncbi.get_lineage(taxid)
    ranks = ncbi.get_rank(lineage)
    names = ncbi.get_taxid_translator(lineage)

    # Add to node
    leaf.add_feature("taxid", taxid)
    leaf.add_feature("lineage", [names[t] for t in lineage])
4. Tree Visualization

Create publication-quality tree visualizations:

  • Output formats: PNG (raster), PDF, and SVG (vector) for publications
  • Layout modes: Rectangular and circular tree layouts
  • Interactive GUI: Explore trees interactively with zoom, pan, and search
  • Custom styling: NodeStyle for node appearance (colors, shapes, sizes)
  • Faces: Add graphical elements (text, images, charts, heatmaps) to nodes
  • Layout functions: Dynamic styling based on node properties

Basic visualization workflow:

python
from ete3 import Tree, TreeStyle, NodeStyle

tree = Tree("tree.nw")

# Configure tree style
ts = TreeStyle()
ts.show_leaf_name = True
ts.show_branch_support = True
ts.scale = 50  # pixels per branch length unit

# Style nodes
for node in tree.traverse():
    nstyle = NodeStyle()

    if node.is_leaf():
        nstyle["fgcolor"] = "blue"
        nstyle["size"] = 8
    else:
        # Color by support
        if node.support > 0.9:
            nstyle["fgcolor"] = "darkgreen"
        else:
            nstyle["fgcolor"] = "red"
        nstyle["size"] = 5

    node.set_style(nstyle)

# Render to file
tree.render("tree.pdf", tree_style=ts)
tree.render("tree.png", w=800, h=600, units="px", dpi=300)

Use scripts/quick_visualize.py for rapid visualization:

bash
# Basic visualization
python scripts/quick_visualize.py tree.nw output.pdf

# Circular layout with custom styling
python scripts/quick_visualize.py tree.nw output.pdf --mode c --color-by-support

# High-resolution PNG
python scripts/quick_visualize.py tree.nw output.png --width 1200 --height 800 --units px --dpi 300

# Custom title and styling
python scripts/quick_visualize.py tree.nw output.pdf --title "Species Phylogeny" --show-support

Advanced visualization with faces:

python
from ete3 import Tree, TreeStyle, TextFace, CircleFace

tree = Tree("tree.nw")

# Add features to nodes
for leaf in tree:
    leaf.add_feature("habitat", "marine" if "fish" in leaf.name else "land")

# Layout function
def layout(node):
    if node.is_leaf():
        # Add colored circle
        color = "blue" if node.habitat == "marine" else "green"
        circle = CircleFace(radius=5, color=color)
        node.add_face(circle, column=0, position="aligned")

        # Add label
        label = TextFace(node.name, fsize=10)
        node.add_face(label, column=1, position="aligned")

ts = TreeStyle()
ts.layout_fn = layout
ts.show_leaf_name = False

tree.render("annotated_tree.pdf", tree_style=ts)
5. Clustering Analysis

Analyze hierarchical clustering results with data integration:

  • ClusterTree: Specialized class for clustering dendrograms
  • Data matrix linking: Connect tree leaves to numerical profiles
  • Cluster metrics: Silhouette coefficient, Dunn index, inter/intra-cluster distances
  • Validation: Test cluster quality with different distance metrics
  • Heatmap visualization: Display data matrices alongside trees

Clustering workflow:

python
from ete3 import ClusterTree

# Load tree with data matrix
matrix = """#Names\tSample1\tSample2\tSample3
Gene1\t1.5\t2.3\t0.8
Gene2\t0.9\t1.1\t1.8
Gene3\t2.1\t2.5\t0.5"""

tree = ClusterTree("((Gene1,Gene2),Gene3);", text_array=matrix)

# Evaluate cluster quality
for node in tree.traverse():
    if not node.is_leaf():
        silhouette = node.get_silhouette()
        dunn = node.get_dunn()

        print(f"Cluster: {node.name}")
        print(f"  Silhouette: {silhouette:.3f}")
        print(f"  Dunn index: {dunn:.3f}")

# Visualize with heatmap
tree.show("heatmap")
6. Tree Comparison

Quantify topological differences between trees:

  • Robinson-Foulds distance: Standard metric for tree comparison
  • Normalized RF: Scale-invariant distance (0.0 to 1.0)
  • Partition analysis: Identify unique and shared bipartitions
  • Consensus trees: Analyze support across multiple trees
  • Batch comparison: Compare multiple trees pairwise

Compare two trees:

python
from ete3 import Tree

tree1 = Tree("tree1.nw")
tree2 = Tree("tree2.nw")

# Calculate RF distance
rf, max_rf, common_leaves, parts_t1, parts_t2 = tree1.robinson_foulds(tree2)

print(f"RF distance: {rf}/{max_rf}")
print(f"Normalized RF: {rf/max_rf:.3f}")
print(f"Common leaves: {len(common_leaves)}")

# Find unique partitions
unique_t1 = parts_t1 - parts_t2
unique_t2 = parts_t2 - parts_t1

print(f"Unique to tree1: {len(unique_t1)}")
print(f"Unique to tree2: {len(unique_t2)}")

Compare multiple trees:

python
import numpy as np

trees = [Tree(f"tree{i}.nw") for i in range(4)]

# Create distance matrix
n = len(trees)
dist_matrix = np.zeros((n, n))

for i in range(n):
    for j in range(i+1, n):
        rf, max_rf, _, _, _ = trees[i].robinson_foulds(trees[j])
        norm_rf = rf / max_rf if max_rf > 0 else 0
        dist_matrix[i, j] = norm_rf
        dist_matrix[j, i] = norm_rf

Installation and Setup

Install ETE toolkit:

bash
# Basic installation
uv pip install ete3

# With external dependencies for rendering (optional but recommended)
# On macOS:
brew install qt@5

# On Ubuntu/Debian:
sudo apt-get install python3-pyqt5 python3-pyqt5.qtsvg

# For full features including GUI
uv pip install ete3[gui]

First-time NCBI Taxonomy setup:

The first time NCBITaxa is instantiated, it automatically downloads the NCBI taxonomy database (~300MB) to ~/.etetoolkit/taxa.sqlite. This happens only once:

python
from ete3 import NCBITaxa
ncbi = NCBITaxa()  # Downloads database on first run

Update taxonomy database:

python
ncbi.update_taxonomy_database()  # Download latest NCBI data

Common Use Cases

Use Case 1: Phylogenomic Pipeline

Complete workflow from gene tree to ortholog identification:

python
from ete3 import PhyloTree, NCBITaxa

# 1. Load gene tree with alignment
tree = PhyloTree("gene_tree.nw", alignment="alignment.fasta")

# 2. Configure species naming
tree.set_species_naming_function(lambda x: x.split("_")[0])

# 3. Detect evolutionary events
tree.get_descendant_evol_events()

# 4. Annotate with taxonomy
ncbi = NCBITaxa()
for leaf in tree:
    if leaf.species in species_to_taxid:
        taxid = species_to_taxid[leaf.species]
        lineage = ncbi.get_lineage(taxid)
        leaf.add_feature("lineage", lineage)

# 5. Extract ortholog groups
ortho_groups = tree.get_speciation_trees()

# 6. Save and visualize
for i, ortho in enumerate(ortho_groups):
    ortho.write(outfile=f"ortho_{i}.nw")
Use Case 2: Tree Preprocessing and Formatting

Batch process trees for analysis:

bash
# Convert format
python scripts/tree_operations.py convert input.nw output.nw --in-format 0 --out-format 1

# Root at midpoint
python scripts/tree_operations.py reroot input.nw rooted.nw --midpoint

# Prune to focal taxa
python scripts/tree_operations.py prune rooted.nw pruned.nw --keep-taxa taxa_list.txt

# Get statistics
python scripts/tree_operations.py stats pruned.nw
Use Case 3: Publication-Quality Figures

Create styled visualizations:

python
from ete3 import Tree, TreeStyle, NodeStyle, TextFace

tree = Tree("tree.nw")

# Define clade colors
clade_colors = {
    "Mammals": "red",
    "Birds": "blue",
    "Fish": "green"
}

def layout(node):
    # Highlight clades
    if node.is_leaf():
        for clade, color in clade_colors.items():
            if clade in node.name:
                nstyle = NodeStyle()
                nstyle["fgcolor"] = color
                nstyle["size"] = 8
                node.set_style(nstyle)
    else:
        # Add support values
        if node.support > 0.95:
            support = TextFace(f"{node.support:.2f}", fsize=8)
            node.add_face(support, column=0, position="branch-top")

ts = TreeStyle()
ts.layout_fn = layout
ts.show_scale = True

# Render for publication
tree.render("figure.pdf", w=200, units="mm", tree_style=ts)
tree.render("figure.svg", tree_style=ts)  # Editable vector
Show full SKILL.md (323 more words)Show less
Use Case 4: Automated Tree Analysis

Process multiple trees systematically:

python
from ete3 import Tree
import os

input_dir = "trees"
output_dir = "processed"

for filename in os.listdir(input_dir):
    if filename.endswith(".nw"):
        tree = Tree(os.path.join(input_dir, filename))

        # Standardize: midpoint root, resolve polytomies
        midpoint = tree.get_midpoint_outgroup()
        tree.set_outgroup(midpoint)
        tree.resolve_polytomy(recursive=True)

        # Filter low support branches
        for node in tree.traverse():
            if hasattr(node, 'support') and node.support < 0.5:
                if not node.is_leaf() and not node.is_root():
                    node.delete()

        # Save processed tree
        output_file = os.path.join(output_dir, f"processed_{filename}")
        tree.write(outfile=output_file)

Reference Documentation

For comprehensive API documentation, code examples, and detailed guides, refer to the following resources in the references/ directory:

  • api_reference.md: Complete API documentation for all ETE classes and methods (Tree, PhyloTree, ClusterTree, NCBITaxa), including parameters, return types, and code examples
  • workflows.md: Common workflow patterns organized by task (tree operations, phylogenetic analysis, tree comparison, taxonomy integration, clustering analysis)
  • visualization.md: Comprehensive visualization guide covering TreeStyle, NodeStyle, Faces, layout functions, and advanced visualization techniques

Load these references when detailed information is needed:

python
# To use API reference
# Read references/api_reference.md for complete method signatures and parameters

# To implement workflows
# Read references/workflows.md for step-by-step workflow examples

# To create visualizations
# Read references/visualization.md for styling and rendering options

Troubleshooting

Import errors:

bash
# If "ModuleNotFoundError: No module named 'ete3'"
uv pip install ete3

# For GUI and rendering issues
uv pip install ete3[gui]

Rendering issues:

If tree.render() or tree.show() fails with Qt-related errors, install system dependencies:

bash
# macOS
brew install qt@5

# Ubuntu/Debian
sudo apt-get install python3-pyqt5 python3-pyqt5.qtsvg

NCBI Taxonomy database:

If database download fails or becomes corrupted:

python
from ete3 import NCBITaxa
ncbi = NCBITaxa()
ncbi.update_taxonomy_database()  # Redownload database

Memory issues with large trees:

For very large trees (>10,000 leaves), use iterators instead of list comprehensions:

python
# Memory-efficient iteration
for leaf in tree.iter_leaves():
    process(leaf)

# Instead of
for leaf in tree.get_leaves():  # Loads all into memory
    process(leaf)

Newick Format Reference

ETE supports multiple Newick format specifications (0-100):

  • Format 0: Flexible with branch lengths (default)
  • Format 1: With internal node names
  • Format 2: With bootstrap/support values
  • Format 5: Internal node names + branch lengths
  • Format 8: All features (names, distances, support)
  • Format 9: Leaf names only
  • Format 100: Topology only

Specify format when reading/writing:

python
tree = Tree("tree.nw", format=1)
tree.write(outfile="output.nw", format=5)

NHX (New Hampshire eXtended) format preserves custom features:

python
tree.write(outfile="tree.nhx", features=["habitat", "temperature", "depth"])

Best Practices

  1. Preserve branch lengths: Use preserve_branch_length=True when pruning for phylogenetic analysis
  2. Cache content: Use get_cached_content() for repeated access to node contents on large trees
  3. Use iterators: Employ iter_* methods for memory-efficient processing of large trees
  4. Choose appropriate traversal: Postorder for bottom-up analysis, preorder for top-down
  5. Validate monophyly: Always check returned clade type (monophyletic/paraphyletic/polyphyletic)
  6. Vector formats for publication: Use PDF or SVG for publication figures (scalable, editable)
  7. Interactive testing: Use tree.show() to test visualizations before rendering to file
  8. PhyloTree for phylogenetics: Use PhyloTree class for gene trees and evolutionary analysis
  9. Copy method selection: "newick" for speed, "cpickle" for full fidelity, "deepcopy" for complex objects
  10. NCBI query caching: Store NCBI taxonomy query results to avoid repeated database access

© davila7, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 5 other files (scripts, references) in cli-tool/components/skills/scientific/etetoolkit of davila7/claude-code-templates.

  • SKILL.md
  • references/api_reference.md
  • references/visualization.md
  • references/workflows.md
  • scripts/quick_visualize.py
  • scripts/tree_operations.py

Open the folder on GitHubat commit 14680ec

Used in 12 other repositories

We found 14 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 12 other GitHub owners. This page covers the copy in davila7/claude-code-templates, which our catalogue first saw on October 7, 2026.

Compare with similar skills

ETE Toolkit for Phylogenetic Trees next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

ETE Toolkit for Phylogenetic Trees compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
ETE Toolkit for Phylogenetic Trees this skilldavila7/claude-code-templates32k12 repos~4.5kAutomated safety check: NotesMIT
BiopythonK-Dense-AI/scientific-agent-skills48k1 repos~4.3kAutomated safety check: NotesMIT
Biopythonlamm-mit/scienceclaw244—~3.9kAutomated safety check: PassApache-2.0
Bio Comparative Genomics Hgt DetectionGPTomics/bioSkills1.2k2 repos~8.5kAutomated safety check: PassMIT
Bio Geo Datamajiayu000/claude-skill-registry6663 repos~4.4kAutomated safety check: PassMIT
Ggetaipoch/medical-research-skills2k—~816Automated safety check: PassMIT

Similar skills

  • Biopython

    K-Dense-AI/scientific-agent-skills

    Provides Biopython workflows for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez).

    48k GitHub starsUsed in 1 repo~4.3k tokens
    Research & ScienceAuto-check: notes
  • Biopython

    lamm-mit/scienceclaw

    Computational molecular biology library (sequence I/O, alignment, phylogenetics).

    244 GitHub stars~3.9k tokensUpdated 1 mo ago
    Research & ScienceAuto-check passed
  • Detect horizontal gene transfer (HGT / LGT) using compositional methods (GC%, codon usage, tetranucleotide z-scores via SIGI-HMM, AlienHunter, IslandViewer 4, IslandPath-DIMOB)…

    1.2k GitHub starsUsed in 2 repos~8.5k tokens
    Research & ScienceAuto-check passed
  • Bio Geo Data

    majiayu000/claude-skill-registry

    Query and download from NCBI Gene Expression Omnibus (GEO) and EMBL-EBI's BioStudies/ArrayExpress mirror.

    666 GitHub starsUsed in 3 repos~4.4k tokens
    Research & ScienceAuto-check passed
  • Gget

    aipoch/medical-research-skills

    Unified CLI/Python interface for querying genomic, proteomic, structure, and expression data across 20+ bioinformatics databases; use when you need fast, scriptable retrieval by gene/protein IDs or…

    2k GitHub stars~816 tokensUpdated 21 days ago
    Research & ScienceAuto-check passed
  • Biopython

    foryourhealth111-pixel/Vibe-Skills

    Primary retained Python toolkit for molecular biology sequence work.

    3.6k GitHub stars~3.5k tokensUpdated 1 mo ago
    Research & ScienceAuto-check passed

More from davila7/claude-code-templates

All 477 skills in this repo
  • Perplexity Web Search

    davila7/claude-code-templates

    Runs web-grounded searches through Perplexity's Sonar models over OpenRouter for current events, recent literature and cited facts beyond the model's training cutoff.

    32k GitHub starsUsed in 12 repos~3.5k tokens
    Auto-check: notes
  • Neuropixels Data Analysis

    davila7/claude-code-templates

    Analyzes Neuropixels recordings from SpikeGLX or Open Ephys through preprocessing, drift correction, Kilosort4 spike sorting, quality metrics and curation.

    32k GitHub starsUsed in 10 repos~2.8k tokens
    Auto-check passed
  • Scientific Venue Templates

    davila7/claude-code-templates

    Supplies LaTeX templates and formatting rules for journals, conferences, posters, and grant proposals, then can check a draft against them.

    32k GitHub starsUsed in 9 repos~5.1k tokens
    Auto-check: notes
  • Brand Voice Content Creator

    davila7/claude-code-templates

    Analyzes a brand's existing writing to lock in a consistent voice, then builds SEO blog posts and platform-specific social content around it.

    32k GitHub starsUsed in 3 repos~1.9k tokens
    Auto-check passed
  • CAPA Officer

    davila7/claude-code-templates

    Guides corrective and preventive action (CAPA) work in a quality management system, from initiation and root cause analysis through effectiveness verification.

    32k GitHub starsUsed in 1 repo~2k tokens
    Auto-check passed
  • Fda Consultant Specialist

    davila7/claude-code-templates

    Senior FDA consultant and specialist for medical device companies including HIPAA compliance and requirement management.

    32k GitHub starsUsed in 1 repo~2.7k tokens
    Auto-check passed

Works with

Questions about ETE Toolkit for Phylogenetic Trees

What does ETE Toolkit for Phylogenetic Trees do?

Guides your agent through building, editing, comparing and drawing phylogenetic trees with the ETE Python toolkit, including orthology calls and NCBI taxonomy lookups. This skill teaches the agent to use ETE (Environment for Tree Exploration) on phylogenetic and other hierarchical trees. It covers reading and writing Newick, NHX, PhyloXML and NeXML files, walking a tree in different orders, pruning, rooting, collapsing nodes, resolving polytomies, and comparing two trees by Robinson-Foulds distance.

When should I use ETE Toolkit for Phylogenetic Trees?

ETE Toolkit for Phylogenetic Trees fits situations like: pruning, rooting or collapsing nodes in a Newick tree file; telling orthologs from paralogs in a gene family tree; annotating a species tree with NCBI taxonomy lineages; drawing a phylogenetic tree as a PDF or SVG figure.

How do I install ETE Toolkit for Phylogenetic Trees in Claude Code?

Run `npx skills add davila7/claude-code-templates --skill etetoolkit -a claude-code`. Or copy the skill folder (cli-tool/components/skills/scientific/etetoolkit in davila7/claude-code-templates) into .claude/skills/etetoolkit in your project. Claude Code loads it when a task matches its description.

How do I install ETE Toolkit for Phylogenetic Trees in Codex?

Run `npx skills add davila7/claude-code-templates --skill etetoolkit -a codex`. Or copy the skill folder (cli-tool/components/skills/scientific/etetoolkit in davila7/claude-code-templates) into .agents/skills/etetoolkit in your project. Codex loads it when a task matches its description.

Can I use ETE Toolkit for Phylogenetic Trees in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add davila7/claude-code-templates --skill etetoolkit -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/etetoolkit, .gemini/skills/etetoolkit, .github/skills/etetoolkit and .opencode/skills/etetoolkit in your project.

What does ETE Toolkit for Phylogenetic Trees need to run?

Going by SKILL.md and its folder, ETE Toolkit for Phylogenetic Trees needs Python for the scripts in its folder and the command-line tools its instructions call (python, uv, brew and apt-get). Our summary lists: Python with the `ete3` package; Network access for the first NCBI taxonomy download (about 300MB).

Does ETE Toolkit for Phylogenetic Trees access the network?

SKILL.md contains no URLs. Its commands use uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is ETE Toolkit for Phylogenetic Trees safe to install?

Our automated static check of SKILL.md found notes only (runs commands with sudo), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does ETE Toolkit for Phylogenetic Trees use?

ETE Toolkit for Phylogenetic Trees is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does ETE Toolkit for Phylogenetic Trees use?

About 4.5k tokens (SKILL.md is roughly 18k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 13k tokens, read only when the agent opens those files.

What are the alternatives to ETE Toolkit for Phylogenetic Trees?

Skills that share tags, products or a category with ETE Toolkit for Phylogenetic Trees: Biopython (K-Dense-AI/scientific-agent-skills, 48k stars), Biopython (lamm-mit/scienceclaw, 244 stars), Bio Comparative Genomics Hgt Detection (GPTomics/bioSkills, 1.2k stars) and Bio Geo Data (majiayu000/claude-skill-registry, 666 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains ETE Toolkit for Phylogenetic Trees?

davila7 (a GitHub user) maintains it in davila7/claude-code-templates, which has 32,463 GitHub stars. The repository holds 477 skills in this directory. The repository was last updated on October 8, 2026.

Source: davila7/claude-code-templates on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.