bio-annotation

bio-annotation is a skill for Claude Code from fmschulz/omics-skills. It costs 38 tokens per session (2,400 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/github.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/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for bio-annotation

Your own site · 80×15
<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="Reviewed on agentmods" width="80" 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,400 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.02400
Opus 5.5 $0.00015 $0.00960
Sonnet 5.5 $0.00008 $0.00480
Haiku 4.5 $0.00004 $0.00240

Measured 23d ago against content hash 2a2df445ec44, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-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 23d ago.

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 · 102 lines

How it starts

The opening of the file, as written. The whole thing — 102 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
    

    raw_annotations.tsv is one row per protein and family hit with columns genome, protein_id, family_id, family_name, category, e_value, annotation, taxonomy, confidence, merged by you from the tool outputs below. genomes.tsv has genome, role (query|reference), domain, route; marker_catalog.tsv has category, family_id, family_name, expected. fixtures/ holds a runnable example. 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. InterProScan 5 (5.78-109.0) and the Nextflow-based InterProScan 6 (6.0.2.2) both have current releases (checked 2026-10-01). Pin one release and one InterPro data release per project.

  5. Run InterProScan for domain/family annotation.

  6. Run eggNOG-mapper v2.1.13+ for orthology-based annotation. v3.0.0 is in beta; use it only when the project pins it deliberately.

  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 · 102 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. 23d ago Changed · +3 lines 2a2df445ec44
  2. 1mo ago Changed · +1 lines ea6f4d5ddf62
  3. 1mo 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 (11 stars, last pushed 23d ago), licensed MIT. It adds 38 tokens to every session and 2,400 once invoked, about $0.0002 per session on Opus 5.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

Queries and downloads public cancer imaging data from NCI Imaging Data Commons. Supports IDC collection discovery, DICOM access, radiology (CT, MR, PET) and pathology AI datasets, metadata SQL, visualization, licensing, and citations. Uses public metadata and download routes without authentication; optional BigQuery…

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

genomic-intelligence

Predicts regulatory features, gene structure, and expression directly from DNA sequence using Genomic Intelligence's hosted transformer DNA language models — no local GPU or model weights. Six tasks over a REST API and a hosted MCP server (keyless public demo): promoter regions, splice donor/acceptor sites, enhancer…

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

lab-hardware-cad

Designs custom laboratory hardware as parametric build123d models and exports fabrication artifacts as 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…

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

onekgpd

Queries 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…

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

relsa-severity-assessment

Supports multivariate severity assessment and exploratory endpoint-time score forecasting 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…

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

scientific-slides

Builds slide decks and presentations for research talks. Used for making PowerPoint slides, conference presentations, seminar talks, research presentations, thesis defense slides, or any scientific talk. Provides slide structure, design templates, timing guidance, and visual validation. Works with PowerPoint and LaTeX…

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