bio-annotation

bio-annotation is a skill for Claude Code from fmschulz/omics-skills. It costs 38 tokens per session (2,146 once invoked), scanned A, original, MIT.

A bioinformatics workflow for assigning likely functions and species relationships to genes, proteins, genomes, and DNA sequences. Bioinformatics uses computer tools to study biological data.

In plain words
What is it for?
Annotating genes or proteins, identifying protein domains, labeling genomes or contigs, inferring taxonomy, and comparing gene-family expansions or losses.
Why use it?
It helps turn sequence-comparison results into organized, comparable annotation and taxonomy results. It also records missing markers and changes in gene families against a reference.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: mentions AGENTS.md.

Part of the omics-skills plugin — 34 skills, 4 agents shipped together

Good fit Annotating genes or proteins, identifying protein domains, labeling genomes or contigs, inferring taxonomy, and comparing gene-family expansions or losses.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/fmschulz/omics-skills/bio-annotation
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add fmschulz/omics-skills --skill bio-annotation
Clone the repo
git clone --depth 1 https://github.com/fmschulz/omics-skills

Made for: Claude Code.

Or install omics-skills, the plugin that ships this one along with the rest of its 34 skills, 4 agents.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for bio-annotation

README.md
[![agentmods](https://agentmods.dev/badge/skills/fmschulz/omics-skills/bio-annotation.svg)](https://agentmods.dev/skills/fmschulz/omics-skills/bio-annotation)
Your own site
<a href="https://agentmods.dev/skills/fmschulz/omics-skills/bio-annotation"><img src="https://agentmods.dev/badge/skills/fmschulz/omics-skills/bio-annotation.svg" alt="Measured on agentmods" height="20"></a>
Per session 38 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,146 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00038 $0.02146
Opus 5 $0.00019 $0.01073
Sonnet 5 $0.00008 $0.00429
Haiku 4.5 $0.00004 $0.00215

Measured yesterday against content hash ea6f4d5ddf62, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-07, from the pricing page.

Security

Grade A, and why

bio-annotation scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/build_annotation_artifacts.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/bio-annotation/SKILL.md · 99 lines

How it starts

The opening of the file, as written. The whole thing — 99 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Bio Annotation

Functional annotation and taxonomy inference from sequence homology.

Instructions

  1. Read docs/README.md and the relevant tool guides before running anything.

  2. Normalize tool outputs and generate the complete comparison bundle with the schema-backed driver:

    uv run --script skills/bio-annotation/scripts/build_annotation_artifacts.py \
      raw_annotations.tsv --genomes genomes.tsv --markers marker_catalog.tsv \
      --out results/bio-annotation
    

    The driver refuses a non-empty destination, enforces globally unique protein identifiers, writes normalized Parquet tables, adds explicit absent-marker rows, and computes query-specific/missing/expanded/contracted families against the reference median. The artifact contract is in schemas/artifacts.schema.json.

  3. When a nucleotide assembly, MAG, genome, or contig FASTA is available, run /tracking-taxonomy-updates first for the BBTools-container QuickClade percontig domain screen. Use that routing table to choose the right taxonomy/QC path before interpreting protein annotations.

  4. For InterProScan, read docs/interproscan-usage.md and validate the exact CLI with --help or --version. Current stable is v5.77-108.0; InterProScan 6 (Nextflow-based) is a forward-looking migration target.

  5. Run InterProScan for domain/family annotation.

  6. Run eggNOG-mapper v2.1.13+ for orthology-based annotation.

  7. Run sequence-vs-database search and resolve taxonomy with TaxonKit v0.20.0+ (required for the March 2025 NCBI rank update that replaces "superkingdom" with "domain" and adds "realm" for viruses). Backend choice (DIAMOND, clustered nr, MMseqs2-GPU): see docs/README.md.

  8. For domain-specific taxonomy after QuickClade:

    • Bacteria/Archaea -> run GTDB-Tk when genome/MAG-level sequence is available and cross-check NCBI/DIAMOND lineage assignments.
    • Viral/phage -> route to /bio-viromics; use PHROG/NCVOG markers and vConTACT3 only for phage/prokaryotic-virus contexts.
    • Giant-virus/Nucleocytoviricota -> route to /bio-viromics with GVClass and NCLDV marker-gene phylogeny.
    • Eukaryota -> use EukCC for MAG/genome QC and lineage context; avoid CheckM/GTDB-Tk assumptions.
  9. For group-appropriate marker families, run HMM searches against the relevant profile libraries (Pfam, TIGRFAM, COG/arCOG, PHROG/NCVOG for viruses, eukaryotic ribosomal/structural HMMs when applicable). Use pyhmmer (Python bindings around HMMER 3.4 with native SIMD and batch-friendly APIs) by default; fall back to the HMMER CLI (hmmsearch / hmmscan) when an upstream tool requires it. The choice of profile libraries is derived from the literature-derived playbook for the inferred group.

  10. Build an annotation-wide feature inventory by genome/contig and by gene family/domain/pathway.

  11. Marker-gene census — from the literature-derived playbook, list the diagnostic marker / machinery categories for the inferred group (e.g., replication, transcription, translation-related such as ribosomal proteins and translation factors, packaging, capsid/structural, chromatin/SMC/topoisomerase, host-interaction). For EACH query genome and each comparison-set genome supplied, record presence and copy number per category. Save as marker_census.tsv (columns: genome, category, family_id, family_name, copy_number, evidence_source, e_value, notes). Expected-but-absent markers are first-class rows, not silent omissions.

  12. Per-family copy-number matrix — build a Pfam/InterPro/HMM-family × genome integer matrix covering queries AND the supplied relatives. Persist as family_copy_number_matrix.parquet. Compute per-family fold change vs the relative median; flag query-specific families, missing-expected families, expansions, and contractions in family_expansion_candidates.tsv.

  13. For exploratory work, read the literature-derived analysis playbook for the inferred organism or virus group before deciding what to flag.

  14. Mine the inventory for discovery candidates relative to that playbook: expected features, missing expected features, rare or expanded families, unusual combinations, annotation/taxonomy conflicts, and high-value unknowns.

  15. For specialized inputs such as viruses, organelles, symbionts, pathogens, or poorly characterized lineages, use the feature classes and outlier dimensions reported in the relevant literature rather than a fixed global checklist.

  16. query_specific requires the family to be absent from every reference. When the reference median is 0 but at least one reference carries the family, the status is present_in_reference_minority with an empty fold_change: report it as a signal, never as a discovery.

  17. Order discovery_candidates.tsv deterministically before reporting. Sort by status in the order query_specific, missing_expected, expanded, contracted, present_in_reference_minority; then by fold_change descending, with inf first and blank or non-numeric values last; then by genome and family_id ascending. Report the top rows in that order and keep the full table.

Read the full file on GitHub · 99 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday Changed · +1 lines ea6f4d5ddf62
  2. 7d ago First seen · 98 lines · 38 tokens per session scan A b351840f4b44

Subscribe to this mod's changes

bio-annotation is a skill published in the GitHub repository fmschulz/omics-skills (7 stars, last pushed 2d ago), licensed MIT. It adds 38 tokens to every session and 2,146 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

imaging-data-commons

Query and download public cancer imaging data from NCI Imaging Data Commons. Invoke for any question about IDC collections, cancer imaging datasets, DICOM data access, radiology (CT, MR, PET) or pathology AI training sets, metadata queries, visualization, or license checks — even when the user doesn't explicitly…

K-Dense-AI/scientific-agent-skills · 75 tokens

tamarind

Access a collection of open-source molecular design and structural biology tools on the Tamarind Bio platform, via its REST API or MCP server — no local GPUs required. Tamarind bundles popular open-source models for structure prediction (AlphaFold, Boltz, Chai, ESMFold), protein, binder, and de novo design…

K-Dense-AI/scientific-agent-skills · 172 tokens

lab-hardware-cad

Design custom laboratory hardware as parametric build123d models and export fabrication-ready STEP, STL, and DXF files - microfluidic chips and molds, optomechanical mounts and breadboard adapters, cuvette and microplate holders, tube racks, animal-behavior rigs, and 3D-printed instrument fixtures. Use when a research…

K-Dense-AI/scientific-agent-skills · 106 tokens

onekgpd

Query the 1000 Genomes Project dataset (3,202 whole-genome-sequenced individuals, GRCh38) at the level of individual participants. Use when a question is about individuals or variants in the 1000 Genomes Project cohort: which individuals carry variants matching specific criteria in a gene or region, which individuals…

K-Dense-AI/scientific-agent-skills · 143 tokens

pkpd-modeling

Pharmacokinetic and pharmacodynamic modelling and simulation - non-compartmental analysis, compartmental and population PK, PK/PD and exposure-response, TMDD, PBPK orientation, bioequivalence, allometric scaling and first-in-human dose, drug interaction prediction, and Bayesian therapeutic drug monitoring. Use when…

K-Dense-AI/scientific-agent-skills · 273 tokens

relsa-severity-assessment

Multivariate severity assessment and humane endpoint prediction for laboratory animal studies using the RELSA (RELative Severity Assessment) score and ARIMA-based foRcast forecasting. Use when combining welfare readouts — body weight or weight loss, body temperature, clinical or nesting scores, biomarkers, activity…

K-Dense-AI/scientific-agent-skills · 182 tokens