tracking-taxonomy-updates
Skill9 starsChanged 4 months agoMITView on GitHub
Track NCBI, GTDB, ICTV, and eukaryotic taxonomy releases, and route genomes, bins, or contigs to domain classifiers. Use when comparing releases, resolving renamed taxa, or assigning taxonomy.
In this repository35 other files it gives its agents.
- AGENTS.mdAGENTS.md
- docs/agents.mdAGENTS.md
- ai-scientist-evaluatorSkill
- arxiv-searchSkill
- beautiful-data-vizSkill
- bio-annotationSkill
- bio-assembly-qcSkill
- bio-binning-qcSkill
- bio-fasta-database-curatorSkill
- bio-foundation-housekeepingSkill
- bio-gene-callingSkill
- bioinformatics-projectSkill
- bio-interdomain-hgtSkill
- bio-logicSkill
- bio-phylogenomicsSkill
- bio-prefect-dask-nextflowSkill
- bio-protein-clustering-pangenomeSkill
- bio-reads-qc-mappingSkill
- biorxiv-searchSkill
- bio-stats-ml-reportingSkill
- bio-structure-annotationSkill
- bio-viromicsSkill
- bio-workflow-methods-docwriterSkill
- crossref-lookupSkill
- csag-extractionSkill
- exploratory-data-analysisSkill
- manuscript-review-councilSkill
- notebooksSkill
- pdf-to-mdSkill
- plotly-dashboard-skillSkill
- polars-dovmedSkill
- proposal-reviewSkill
- public-db-lookupSkill
- scientific-impact-assessmentSkill
- scientific-writingSkill
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 1 is distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 47
Use the project's pinned Pixi environment for every tool and record its lockfile.
- Very specific: line 92
Solution: Run vcontact3 prepare_databases --get-version latest --set-location DIR and export VCONTACT3_DB=DIR before submitting.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Tracking Taxonomy Updates
Report taxonomy changes from authoritative sources with explicit versions, dates, and provenance, and assign taxonomy to sequences through a QuickClade domain screen followed by a domain-specific classifier.
SKILL_DIR is the directory that contains this SKILL.md, for example ~/.agents/skills/tracking-taxonomy-updates.
Instructions
Release and name changes
- Fix the scope: domains, timeframe, and output type.
- Pull release notes and current releases from the sources in reference/sources.md. The snapshots in reference/last-verified-snapshots.md are examples; re-check the sources for any "latest" claim.
- Extract versioned changes and their impact, using stable identifiers from reference/ranks-and-identifiers.md.
- Deliver a versioned report from reference/report-template.md with conflicts flagged.
Taxonomy assignment
- Run QuickClade first on any assembly, MAG, SAG, isolate genome, bin set, or contig FASTA, through the BBTools container with
percontig(reference/tools.md). Skip it only when the user supplies a trusted domain label and asks to skip triage. QuickClade routes; it is not the final authority. Convert the QuickClade machine output into
domain_routing.tsv:uv run --script "$SKILL_DIR/scripts/quickclade_to_routing.py" \ results/taxonomy/quickclade_percontig.tsv \ --sample-id S1 --output results/taxonomy/domain_routing.tsv- Route each row:
- Bacteria or Archaea: GTDB-Tk. If the reference package is missing, install it under the project or shared database root, set
GTDBTK_DATA_PATH, record the release, and passgtdbtk check_installbefore classifying. - Phage or prokaryotic virus:
/bio-viromics, then vConTACT3. - Giant virus or Nucleocytoviricota:
/bio-viromics, then GVClass plus a marker-gene phylogeny. - Eukaryota: EukCC.
- Mixed, low-confidence, or conflicting domains: split or flag the contigs for manual review before any domain-specific tool.
- Bacteria or Archaea: GTDB-Tk. If the reference package is missing, install it under the project or shared database root, set
Submit GTDB-Tk, EukCC, vConTACT3, and GVClass through the scheduler, never on a login node:
SLURM_ACCOUNT=<account> "$SKILL_DIR/scripts/submit_taxonomy.sh" gtdbtk bins results/taxonomy/gtdbtkThe template templates/taxonomy-tool.sbatch requests 16 CPUs, 64 GB, and 24 h, and passes
$SLURM_CPUS_PER_TASKas the thread count to every tool. It needsGTDBTK_DATA_PATH,EUKCC2_DB, orVCONTACT3_DBfor the matching tool; setGTDBTK_EXTENSIONwhen genome files do not end in.fa. sbatch readsSBATCH_CLUSTERS,SBATCH_PARTITION, andSBATCH_QOSfrom the environment. On Dori, exportSBATCH_CLUSTERS=perceus-00,SBATCH_PARTITION=dori,SBATCH_QOS=jgi_normal, andSLURM_ACCOUNT=grp-org-sc-mgs, and qualifysqueue/sacctwith-M perceus-00.- Normalize identifiers and taxonomy strings across tools, and flag disagreements between QuickClade, the classifier, and NCBI.
Use the project's pinned Pixi environment for every tool and record its lockfile.
Input Requirements
- For release tracking: domains, timeframe, and the source systems to compare (NCBI, GTDB, ICTV, eukaryotic frameworks).
- For assignment: genome, bin, or contig FASTA files, a QuickClade reference spectra file (
QUICKCLADE_REF), the downstream databases, and a Slurm account.
Output
- Versioned taxonomy update summary and a cross-source conflict report.
- For assignment workflows:
results/taxonomy/quickclade_percontig.tsv(agent-authored path, written by QuickClade)results/taxonomy/domain_routing.tsv(agent-authored path, written byquickclade_to_routing.py) with columnssample_id,query_id,contig_id,quickclade_domain,quickclade_taxonomy,quickclade_confidence,route,downstream_tool,review_flag,notes- tool outputs under
results/taxonomy/{gtdbtk,eukcc,vcontact3,gvclass}/ - a standardized assignment table joined on stable identifiers
Quality Gates
- Every "latest" claim names the authority, version, and date.
- Joins use stable identifiers (NCBI taxids, GTDB genome IDs), not names.
- Provenance lists tool versions, database releases, container tag and digest, and run dates.
- QuickClade ran first, per contig, and its routing table chose the downstream tools.
- Bacterial and archaeal routes report GTDB-Tk output and the GTDB release, or report the missing database as a blocker.
- Viral routes separate prokaryotic viruses (vConTACT3) from giant-virus candidates (GVClass).
- Eukaryotic routes use EukCC, not prokaryotic QC or taxonomy tools.
- Classifiers ran through the scheduler with explicit thread counts, and outputs were checked as non-empty.
- Items in reference/qa-checklist.md pass.
Examples
Domains: Bacteria + Archaea
Timeframe: last 12 months
Output: summary table + pipeline impact notesTroubleshooting
Issue: Sources disagree on a taxon. Solution: Report both assignments with conflict flags and provenance.
Issue: Stable identifiers are missing. Solution: Resolve names with TaxonKit and report merged or deleted taxid warnings.
Issue: vConTACT3 exits with "No database path provided (--db-path)".
Solution: Run vcontact3 prepare_databases --get-version latest --set-location DIR and export VCONTACT3_DB=DIR before submitting.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

