Pathway Enrichment
K-Dense-AI/scientific-agent-skills
Performs pathway and gene-set enrichment analysis on gene lists or ranked gene data and interprets the results.
Detects acquired antimicrobial-resistance determinants and chromosomal point-mutation resistance in bacterial assemblies using AMRFinderPlus, ResFinder 4.0 (acquired + PointFinder), CARD-RGI…
$ npx skills add GPTomics/bioSkills --skill bio-epidemiological-genomics-amr-surveillance -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install GPTomics/bioSkills bio-epidemiological-genomics-amr-surveillance --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/epidemiological-genomics/amr-surveillance .claude/skills/bio-epidemiological-genomics-amr-surveillance && rm -rf skills-srcUse ~/.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/
Install the "bio-epidemiological-genomics-amr-surveillance" agent skill from https://github.com/GPTomics/bioSkills/tree/main/epidemiological-genomics/amr-surveillance into .claude/skills/bio-epidemiological-genomics-amr-surveillance/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-epidemiological-genomics-amr-surveillance", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/GPTomics/bioSkills/tree/main/epidemiological-genomics/amr-surveillanceType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add GPTomics/bioSkills --skill bio-epidemiological-genomics-amr-surveillance -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install GPTomics/bioSkills bio-epidemiological-genomics-amr-surveillance --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/epidemiological-genomics/amr-surveillance .agents/skills/bio-epidemiological-genomics-amr-surveillance && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "bio-epidemiological-genomics-amr-surveillance" agent skill from https://github.com/GPTomics/bioSkills/tree/main/epidemiological-genomics/amr-surveillance into .agents/skills/bio-epidemiological-genomics-amr-surveillance/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-epidemiological-genomics-amr-surveillance", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add GPTomics/bioSkills --skill bio-epidemiological-genomics-amr-surveillance -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install GPTomics/bioSkills bio-epidemiological-genomics-amr-surveillance --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/epidemiological-genomics/amr-surveillance .cursor/skills/bio-epidemiological-genomics-amr-surveillance && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "bio-epidemiological-genomics-amr-surveillance" agent skill from https://github.com/GPTomics/bioSkills/tree/main/epidemiological-genomics/amr-surveillance into .cursor/skills/bio-epidemiological-genomics-amr-surveillance/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-epidemiological-genomics-amr-surveillance", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/GPTomics/bioSkills.git --path epidemiological-genomics/amr-surveillance--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add GPTomics/bioSkills --skill bio-epidemiological-genomics-amr-surveillance -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install GPTomics/bioSkills bio-epidemiological-genomics-amr-surveillance --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/epidemiological-genomics/amr-surveillance .gemini/skills/bio-epidemiological-genomics-amr-surveillance && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "bio-epidemiological-genomics-amr-surveillance" agent skill from https://github.com/GPTomics/bioSkills/tree/main/epidemiological-genomics/amr-surveillance into .gemini/skills/bio-epidemiological-genomics-amr-surveillance/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-epidemiological-genomics-amr-surveillance", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install GPTomics/bioSkills bio-epidemiological-genomics-amr-surveillanceInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add GPTomics/bioSkills --skill bio-epidemiological-genomics-amr-surveillance -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .github/skills && cp -r skills-src/epidemiological-genomics/amr-surveillance .github/skills/bio-epidemiological-genomics-amr-surveillance && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "bio-epidemiological-genomics-amr-surveillance" agent skill from https://github.com/GPTomics/bioSkills/tree/main/epidemiological-genomics/amr-surveillance into .github/skills/bio-epidemiological-genomics-amr-surveillance/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-epidemiological-genomics-amr-surveillance", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add GPTomics/bioSkills --skill bio-epidemiological-genomics-amr-surveillance -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install GPTomics/bioSkills bio-epidemiological-genomics-amr-surveillance --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/epidemiological-genomics/amr-surveillance .opencode/skills/bio-epidemiological-genomics-amr-surveillance && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "bio-epidemiological-genomics-amr-surveillance" agent skill from https://github.com/GPTomics/bioSkills/tree/main/epidemiological-genomics/amr-surveillance into .opencode/skills/bio-epidemiological-genomics-amr-surveillance/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-epidemiological-genomics-amr-surveillance", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
bio-epidemiological-genomics-amr-surveillanceDetects acquired antimicrobial-resistance determinants and chromosomal point-mutation resistance in bacterial assemblies using AMRFinderPlus, ResFinder 4.0 (acquired + PointFinder), CARD-RGI…
Bio Epidemiological Genomics Amr Surveillance is an agent skill from GPTomics/bioSkills. Detects acquired antimicrobial-resistance determinants and chromosomal point-mutation resistance in bacterial assemblies using AMRFinderPlus, ResFinder 4.0 (acquired + PointFinder), CARD-RGI, abritAMR, staramr, and species-specific callers (TB-Profiler, Mykrobe). Harmonises cross-tool output via hAMRonization, contextualises determinants with mobile-genetic-element annotation (MOB-suite, PlasmidFinder, MobileElementFinder, ICEberg), predicts phenotype against EUCAST or CLSI breakpoints, and translates calls into…
Its SKILL.md is about 7.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files (for example `examples/amr_surveillance.py` and `usage-guide.md`).
It sits in Research & Science, covering Bioinformatics, Performance optimization and Responsive design. The repository describes itself as: a set of SKILLS.md for doing bioinformatics with agents like claude code. The licence is MIT.
Read from SKILL.md and the folder at commit d91ed3d. It shows what the files ask for, not the result of running them.
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.
Ships script files (Python), which the agent can run.
Shell commands in SKILL.md call:
pipFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use pip, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Bio Epidemiological Genomics Amr Surveillance loads about 7.6k tokens when it runs. Until then it costs about 260 tokens; SKILL.md has 3,275 words of instructions outside code blocks.
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.
The automated check found no risky patterns in SKILL.md.
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); files beside SKILL.md are not scanned.
The full file from GPTomics/bioSkills at commit d91ed3d, republished under its MIT licence (© GPTomics). 3,275 words, ~7,607 tokens.
.claude/skills/bio-epidemiological-genomics-amr-surveillance/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.Reference examples tested with: ncbi-amrfinderplus 4.0+, resfinder 4.5+, rgi 6.0+ (CARD 3.3+), abritamr 1.0.14+, staramr 0.10+, hamronization 1.1+, tb-profiler 6.2+, mykrobe 0.13+, mob_suite 3.1+, plasmidfinder 2.1+, MobileElementFinder 1.0+, pandas 2.2+, BioPython 1.84+.
Before using code patterns, verify installed versions match. If versions differ:
pip show <package> then help(module.function) to check signatures<tool> --version then <tool> --help to confirm flagsamrfinder --list_organisms for the current --organism cataloguetb-profiler list_db and verify the bundled WHO editionamrfinder -u (NCBI ReferenceGeneCatalog) and tb-profiler update_tbdbIf a flag or column name does not match (--species vs --organism, barcode_build vs barcode-build), introspect the installed package rather than retrying. AMRFinderPlus, RGI, and ResFinder all renamed columns between major releases.
"What antibiotic-resistance determinants are in this assembly, and what susceptibility do they imply?" -> Combine acquired-gene detection, chromosomal point-mutation calling, mobile-element context, and curated phenotype mapping into a single per-isolate report fit for surveillance or clinical handover. Tool choice is determined by species (Mtb needs TB-Profiler, not AMRFinderPlus), reporting standard (WHO GLASS vs CARD vs in-house), and whether mobility matters (carbapenemase outbreak: yes; routine ESBL screen: less so).
amrfinder -n assembly.fa --organism Klebsiella_pneumoniae --plus -- acquired + intrinsic-aware point mutationstb-profiler profile -1 r1.fq.gz -2 r2.fq.gz -p sample -- TB drug-resistance against WHO 2nd-edition cataloguehamronize amrfinderplus --analysis_software_version 4.0.3 --reference_database_version 2025-02-01.1 in.tsv > out.tsv -- normalise output across toolspandas to join AMRFinderPlus + RGI + ResFinder + MOB-suite per-isolate for a single decision tableA pan-species AMRFinderPlus run misses chromosomal point-mutation resistance because the point-mutation panels are species-specific and activated only when --organism is set. Running amrfinder -n mtb.fa without --organism returns "no AMR detected" on an XDR-TB genome because AMRFinderPlus has no Mtb organism mode -- the user must switch tools (TB-Profiler or Mykrobe + WHO 2nd-edition catalogue). Similarly, Salmonella gyrA T83I, Klebsiella mgrB inactivation, and E. coli QRDR mutations are silent without --organism Salmonella / Klebsiella_pneumoniae / Escherichia. For any cross-tool surveillance pipeline, AMRFinderPlus with --organism MUST be paired with a species-specific second tool (TB-Profiler for Mtb; ResFinder 4.0 with -s 'species' for PointFinder coverage; hAMRonization to merge). Andersson et al. Nat Rev Microbiol 17:479 (2019) further notes that heteroresistance at 0.1-1% allele frequency is widespread and invisible to default variant callers, compounding the failure mode for any single-tool workflow.
| Tool | Mechanism | Inputs | Output | Strength | Fails when |
|---|---|---|---|---|---|
| AMRFinderPlus (Feldgarden 2021 Sci Rep 11:12728) | Curated HMM + BLAST against NCBI ReferenceGeneCatalog; per-gene cutoffs | assembly or protein | gene + class + element-type | Gene-family-aware (catches divergent variants); built-in species point-mutation panels | No Mtb mode; reports intrinsic genes unless --organism set |
| ResFinder 4.0 (Bortolaia 2020 J Antimicrob Chemother 75:3491) | BLAST against ResFinder DB (acquired) + PointFinder DB (chromosomal mutations) per species | assembly or reads | gene + predicted phenotype (S/I/R) | Phenotype prediction tied to CLSI/EUCAST | Requires explicit -s 'species' for PointFinder; default 90/60 cutoffs hide divergent variants |
| CARD-RGI (Alcock 2023 NAR 51:D690) | BLAST + HMM against CARD; tiers Perfect / Strict / Loose | assembly or protein | ARO ontology term, model-type (homolog / variant / overexpression / knockout / rRNA) | Mechanism-resolved (operons modelled); ARO ontology is curated | Loose tier produces many false positives; default Strict+Perfect misses real variants in non-model organisms |
| abritAMR (Sherry 2023 Nat Commun 14:60) | AMRFinderPlus wrapper + drug-class classifier; ISO-certified for clinical use | assembly | gene + drug class | First ISO-certified AMR pipeline; accredited reporting categories | Limited to AMRFinderPlus's underlying gene panel |
| staramr | ResFinder + PointFinder + PlasmidFinder + MLST in one pipeline | assembly | combined report | One-shot Salmonella / E. coli / Campylobacter surveillance | Default organism handling can hide point mutations; verify each component version |
| TB-Profiler (Phelan 2019 Genome Med 11:41) | Maps reads or assembly against H37Rv + WHO catalogue + Coll/Napier lineage barcode | reads or assembly | per-drug R/R-interim/Uncertain/S + lineage | WHO 2nd-edition catalogue integration; lineage call; heteroresistance from allele frequency | Hardcoded to MTBC; older bundled DB may predate current WHO edition |
| Mykrobe (Hunt 2019 Wellcome Open Res 4:191) | k-mer presence/absence against curated panel | reads | species + AMR per drug | k-mer-fast; cross-checks TB-Profiler; supports Mtb, S. aureus, Salmonella, gonorrhoea | Panel may lag WHO catalogue; check --panel |
| hAMRonization (PHA4GE) | Format converter to PHA4GE schema | per-tool TSV | unified TSV/JSON | Cross-tool comparison; surveillance harmonisation | Mandatory metadata fields differ per tool subparser |
| Scenario | Recommended | Why wrong choices fail |
|---|---|---|
| Routine screen of an E. coli / Klebsiella / Salmonella assembly for acquired AMR + point mutations | AMRFinderPlus with --organism Escherichia / Klebsiella_pneumoniae / Salmonella + --plus | Without --organism: no PointFinder panel, fluoroquinolone QRDR mutations missed; intrinsic-gene noise in Klebsiella |
| M. tuberculosis drug-resistance prediction | TB-Profiler interpreted via WHO 2nd-edition catalogue, Mykrobe as cross-check on R/XDR isolates | AMRFinderPlus has no Mtb organism mode; ResFinder PointFinder lacks the full WHO catalogue; tool defaults silently call Group 3 mutations as "susceptible" |
| Predict S/I/R phenotype, not gene presence | ResFinder 4.0 OR abritAMR; document EUCAST or CLSI breakpoint year | AMRFinderPlus reports presence only; mapping presence -> phenotype needs curated rules |
| Carbapenemase outbreak: is the gene mobile? | AMRFinderPlus -> MOB-suite (mob_recon + mob_typer) -> cross-reference; long-read or hybrid assembly recommended | PlasmidFinder alone gives replicon type but not gene-plasmid linkage; short-read draft assemblies fragment plasmid contigs and lose context |
| Cross-laboratory surveillance reporting | Pass per-tool output through hAMRonization to PHA4GE schema; populate analysis_software_version and reference_database_version | Raw cross-tool comparison is meaningless (CARD ARO vs ResFinder name vs NCBI ReferenceGeneCatalog) |
| Novel-variant surveillance (emergence) | AMRFinderPlus (HMM, gene-family-aware) OR CARD-RGI with Loose-tier manual review | abricate's 80/80 defaults reject divergent family members; pure-BLAST defaults silently miss novel mcr / OXA sub-variants |
| Quantitative AMR from metagenomic reads | AMRPlusPlus / DeepARG / ARGs-OAP normalised to 16S; report "ARG abundance" NOT "resistance" | Assembly-based tools fail on short reads; reporting environmental ARG counts as "resistance" inherits the environmental-resistome critique that homolog presence is not phenotypic resistance |
| Colistin resistance in Klebsiella / Enterobacter / Salmonella | mcr-1 to mcr-10 acquired (AMRFinderPlus; mcr-1 originally Liu 2016 Lancet Infect Dis 16:161) + mgrB / pmrAB / phoPQ point mutations (--organism Klebsiella_pneumoniae) + phenotypic confirmation for mcr-9/10 | mcr-9 / mcr-10 frequently report without elevated MIC; treating mcr presence as "colistin-R" triggers infection control unnecessarily |
| WHO GLASS submission | hAMRonization -> drug-class mapping -> EUCAST/CLSI breakpoint interpretation; record breakpoint year | Gene-level reporting without class mapping cannot populate GLASS categories |
Methodology evolves rapidly; before a high-stakes outbreak report, web-search "AMRFinderPlus organism modes 2026" and confirm the WHO Mtb catalogue edition currently bundled in TB-Profiler.
Goal: Produce a per-isolate AMR report including acquired genes, species-specific chromosomal point mutations, stress/virulence elements, and per-hit method and coverage metadata for downstream harmonisation.
Approach: Run amrfinder with -n for nucleotide assembly, --organism to activate the species-specific point-mutation panel, --plus to include stress / virulence / heat / metal, and --report_all when truncated-gene visibility matters. Pin the database via amrfinder -u -> verify --db matches a recorded date.
DB=$(amrfinder -V | grep -i database | awk '{print $NF}')
amrfinder \
-n assembly.fa \
--organism Klebsiella_pneumoniae \
--plus \
--threads 8 \
-o sample.amrfinder.tsv
echo "DB version: ${DB}" >> sample.amrfinder.tsvColumn semantics worth inspecting: Element type (AMR / POINT / VIRULENCE / STRESS / etc.), Method (EXACTX / PARTIAL_CONTIG_END / HMM / etc. -- partial-contig hits flag assembly fragmentation), % Coverage of reference sequence, % Identity to reference sequence, Class / Subclass (drug-class summary). Method = PARTIAL_CONTIG_END is the smoking gun for plasmid-context fragmentation -- consider long-read confirmation.
Goal: Generate a WHO-catalogue-aligned drug-resistance report for M. tuberculosis covering all 13 first-line + second-line + new/repurposed drugs, with lineage assignment via the Coll/Napier MTBC barcode (90-SNP version) and explicit handling of Group 3 (Uncertain) mutations.
Approach: TB-Profiler primary (it bundles the WHO catalogue and reports the Walker 2022 / 2023 association grouping); Mykrobe as an orthogonal cross-check on any R / XDR call that will drive treatment. NEVER collapse Group 3 mutations to "susceptible" -- the WHO catalogue's tiered scoring is load-bearing for clinical handover.
tb-profiler update_tbdb
tb-profiler profile \
-1 reads_R1.fq.gz \
-2 reads_R2.fq.gz \
-p sample \
--txt --csv --pdf \
--dir tbprofiler_out
mykrobe predict \
--sample sample \
--species tb \
--output sample.mykrobe.json \
--format json \
reads_R1.fq.gz reads_R2.fq.gzAllix-Béguec et al. (CRyPTIC) NEJM 379:1403 (2018) established >99% negative predictive value for first-line drugs and is the basis for WGS-only DST policies; the same study showed sensitivity remains lower for bedaquiline, delamanid, linezolid, and clofazimine, so phenotypic DST is still required for second-line and new/repurposed agents in MDR/XDR-TB workups. The WHO 2023 catalogue (Walker et al. Lancet Microbe 3:e265, 2022 for the 2021 edition methodology; 2023 second edition data) grades each mutation Group 1 / Group 2 (Associated -- interim) / Group 3 (Uncertain) / Group 4 (Not Associated -- interim) / Group 5 (Not Associated). Reporting Group 3 as "S" actively misleads clinicians.
Goal: Convert per-tool AMR output (AMRFinderPlus, ResFinder, RGI, abricate, staramr, ARIBA, TB-Profiler, Mykrobe) to the PHA4GE schema so a multi-laboratory or multi-tool surveillance dataset is comparable.
Approach: Invoke hamronize <tool> per input with mandatory provenance metadata (--analysis_software_version, --reference_database_version, --input_file_name), then hamronize summarize to merge.
hamronize amrfinderplus \
--analysis_software_version 4.0.3 \
--reference_database_version 2025-02-01.1 \
--input_file_name sample.amrfinder.tsv \
sample.amrfinder.tsv > sample.hamr.tsv
hamronize resfinder \
--analysis_software_version 4.5.0 \
--reference_database_version 2024-12-15 \
--input_file_name sample.resfinder.json \
sample.resfinder.json > sample.resfinder.hamr.tsv
hamronize summarize -t tsv -o cohort.hamr.tsv per_sample_hamr/*.tsvDefault reporting ontology for public-health output is NCBI ReferenceGeneCatalog. Two consequences: (1) CARD ARO terms need translation; (2) any custom gene additions need a corresponding NCBI accession before they appear in the harmonised stream.
Goal: Determine whether a clinically actionable AMR gene (carbapenemase, mcr, ESBL) sits on a chromosome, a plasmid (and which incompatibility group / cluster), an integrative-conjugative element, or a transposon -- because "gene present" tells the infection-control team nothing about transmissibility.
Approach: Reconstruct plasmids from the assembly with MOB-suite mob_recon; type each plasmid with mob_typer; cross-reference AMR-gene coordinates against the plasmid contig list; annotate IS elements / integrons with MobileElementFinder. For surveillance-grade plasmid resolution, prefer long-read (R10.4.1 Q20+) or hybrid assemblies -- short-read draft assemblies routinely fragment plasmid contigs.
mob_recon \
--infile assembly.fa \
--outdir mob_out/ \
--num_threads 4
mob_typer \
--infile mob_out/plasmid_AA001.fasta \
--out_file mob_out/plasmid_AA001.typed.tsv
mefinder find \
--contig assembly.fa \
--out mef_out/sample \
--threads 4Document MOB-suite version explicitly: v2 and v3 cluster codes are non-interoperable, and v3.1+ adds MGE reporting. Across longitudinal surveillance crossing the v2 -> v3 boundary, the same plasmid receives different cluster IDs and appears spuriously "novel".
Trigger: amrfinder -n mtb.fa without --organism; AMRFinderPlus has no Mtb organism mode in any v4.x release.
Mechanism: The species-specific point-mutation panels are activated only when a recognised --organism is passed. Mtb resistance is overwhelmingly chromosomal point mutation (rpoB / katG / inhA / pncA / embB / gyrA / rrs). With no panel active, none of these are called.
Symptom: Empty AMR table on a phenotypically MDR/XDR isolate; lineage barcode not reported (AMRFinderPlus does not call MTBC lineage).
Fix: Switch tools. Use TB-Profiler (preferred -- bundles WHO catalogue + Coll/Napier barcode) or Mykrobe; the AMRFinderPlus catalogue does not cover MTBC.
Trigger: Default per-isolate summarisers report the gene family (bla_OXA-48-like) rather than the allele (bla_OXA-244).
Mechanism: OXA-48 (potent carbapenemase), OXA-181 (Thr213Ala -- similar activity, different plasmid), OXA-232 (Arg214Ser -- reduced carbapenemase activity), and OXA-244 (Arg214Gly -- weakest, often phenotypically susceptible to ertapenem) share >95% identity. Pipelines that report family-level summary erase the clinically actionable variant identity.
Symptom: Surveillance report says "OXA-48-like detected", phenotype is borderline ertapenem-susceptible / meropenem-susceptible, clinical team is confused about whether ceftazidime-avibactam is needed.
Fix: Report the allele explicitly; never collapse to family. AMRFinderPlus reports the allele in Gene symbol -- preserve it through hAMRonization rather than summarising.
Trigger: Phenotypic high-level AmpC hyperproduction in Enterobacter cloacae complex / Citrobacter freundii; or KPC over-expression on Tn4401b (100-bp promoter deletion).
Mechanism: Resistance is mediated by ISEcp1 / IS26 / IS10 insertion upstream of the ampC promoter producing a strong hybrid promoter, or by Tn4401 variant. Gene presence is unchanged. Short-read assemblies fragment IS elements and collapse repeats; promoter context is lost. AMRFinderPlus / RGI / ResFinder report the gene; the regulatory configuration is not annotated.
Symptom: AMR pipeline output identical for wild-type ampC carrier and the hyperproducer; clinical phenotype is divergent.
Fix: Long-read (Nanopore R10.4.1 Q20+ or PacBio HiFi) or hybrid assembly with explicit promoter-context inspection. For Tn4401 variant typing, manual blast of the transposon region. Tools that automate this are emerging but not yet a default in surveillance pipelines.
Trigger: Routine Illumina WGS-AMR pipeline on a clinical isolate; resistance variant appears at 1-5% allele frequency.
Mechanism: Heteroresistance -- clonal subpopulations carrying resistance at 0.1-1% (Andersson, Nicoloff, Hjort Nat Rev Microbiol 17:479, 2019) -- is widespread and clinically meaningful (treatment failure under antibiotic pressure). Default variant callers (bcftools, lofreq default -q 20, GATK HaplotypeCaller) require minor-allele frequency of typically 10-20% to call. Assembly-based pipelines (AMRFinderPlus on assembly) collapse minor variants entirely.
Symptom: Surveillance pipeline calls "S" but clinical failure under therapy; subsequent sampling reveals high-level resistance.
Fix: For clinically critical drugs, supplement assembly-based AMR with deep-read variant calling at lower MAF thresholds (lofreq with -q 13 -a 0.01), or use targeted deep-amplicon sequencing. TB-Profiler reports allele frequency for resistance calls -- inspect for heteroresistance routinely.
Trigger: TB-Profiler / Mykrobe run on an Mtb isolate carrying a mutation graded Group 3 (Uncertain) in the WHO catalogue.
Mechanism: Tools translate Group 3 calls to "no resistance prediction" in their summary; downstream summarisers and clinical handover forms collapse "no prediction" to "S". The Walker 2022 Lancet Microbe catalogue methodology explicitly separates Group 3 (Uncertain) from Group 4/5 (Not Associated) for exactly this reason.
Symptom: Patient treated as drug-susceptible; clinical failure; retrospective inspection finds Group 3 mutation that should have triggered phenotypic DST.
Fix: Read TB-Profiler JSON output, NOT the simplified TSV. Report Group 3 mutations explicitly with "uncertain significance -- phenotypic DST recommended". This is widely under-communicated in surveillance pipelines.
Trigger: Chromosomal fosA in Klebsiella pneumoniae / Enterobacter / Serratia reported as "fosfomycin resistant" by ResFinder / AMRFinderPlus.
Mechanism: Chromosomal fosA confers low-level fosfomycin resistance below the EUCAST clinical breakpoint (32 mg/L for urinary isolates). Treating chromosomal-fosA E. coli as fosfomycin-resistant withholds an oral option for uncomplicated UTI unnecessarily.
Symptom: All K. pneumoniae isolates flagged "fosfomycin-R" regardless of plasmid context or phenotype.
Fix: AMRFinderPlus with --organism Klebsiella_pneumoniae suppresses the intrinsic fosA report; verify the suppression worked. Cross-reference fosA hits with MOB-suite to determine plasmid context; only plasmid-borne or upregulated fosA should be reported as resistance.
| Pattern | Likely cause | Action |
|---|---|---|
AMRFinderPlus calls bla_NDM-5; ResFinder calls bla_NDM-1 | Allele assignment differs by reference database (NCBI ReferenceGeneCatalog vs ResFinder DB); both are within the NDM family | Report the family + flag the allele discordance; for clinical handover prefer NCBI nomenclature, for legacy comparability prefer ResFinder |
RGI calls mecA "Strict"; AMRFinderPlus calls "EXACTX" | Tier semantics differ; both real hits | Concordant resistance call -- harmonise via hAMRonization, use NCBI ReferenceGeneCatalog nomenclature |
| ResFinder reports a gene at 88% identity; AMRFinderPlus omits | ResFinder default 90/60; AMRFinderPlus HMM cutoff stricter for that family | Manual review; for novel-variant surveillance, AMRFinderPlus + Loose-tier RGI catches more |
| TB-Profiler and Mykrobe disagree on isoniazid | Different curated panels; one may predate WHO 2nd edition | Defer to TB-Profiler interpreted against WHO catalogue; manual blast of katG / inhA / fabG1 |
| mcr-9 detected; phenotypic colistin MIC susceptible | Expected -- mcr-9 frequently silent without IqrR / induction | Report mcr-9 detection + susceptibility; do NOT trigger infection-control as if MCR-1 |
AMRFinderPlus Method=PARTIAL_CONTIG_END for a carbapenemase | Assembly fragmentation at the plasmid edge | Re-assemble with long reads or hybrid before reporting; the gene may be present in full |
| RGI calls a long list of "Loose" hits | Non-model organism or distant lineage | Manual curation of Loose hits -- discard generic homologs, retain those near canonical AMR-active residues |
| Quantity | Threshold | Source / rationale |
|---|---|---|
| AMRFinderPlus default %identity | per-gene curated (typically 90% global) | Feldgarden 2021 Sci Rep 11:12728; HMM cutoff is gene-family-aware |
| AMRFinderPlus default %coverage | 50% (alignment coverage) | NCBI Reference; --report_all exposes partial hits |
| ResFinder default %id / %coverage | 90% / 60% | CGE convention; tighter than abricate |
| abricate default %id / %coverage | 80% / 80% | Too permissive for novel-variant surveillance |
| WHO Mtb Group 1 (Associated with R) | High-confidence resistance call | Walker 2022 Lancet Microbe 3:e265 |
| WHO Mtb Group 3 (Uncertain) | NOT "susceptible" -- phenotypic DST recommended | Walker 2022 Lancet Microbe 3:e265; 2023 2nd edition data |
| Heteroresistance MAF | 0.1-1% (deep amplicon detection) | Andersson 2019 Nat Rev Microbiol 17:479 |
| EUCAST fosfomycin urinary breakpoint | 32 mg/L | EUCAST clinical breakpoint tables (year-specific) |
| Variant MAF for routine WGS-AMR calling | 10% (lofreq default), 20% (GATK default) | Tool defaults; document per-pipeline |
| Error / symptom | Cause | Solution |
|---|---|---|
| AMRFinderPlus empty on TB assembly | No Mtb --organism mode | Switch to TB-Profiler / Mykrobe |
| AMRFinderPlus calls intrinsic fosA on Klebsiella | --organism not set; intrinsic suppression off | Always pass --organism for the species |
--species flag rejected | AMRFinderPlus uses --organism, not --species | Use --organism Klebsiella_pneumoniae |
| Different gene names for same determinant across tools | CARD ARO vs ResFinder vs NCBI ReferenceGeneCatalog | Pass through hamronize |
Method=PARTIAL_CONTIG_END on a clinically critical gene | Assembly fragmentation | Re-assemble with long reads / hybrid |
hamronize rejects input as missing metadata | --analysis_software_version not supplied | Populate all mandatory PHA4GE fields per tool subparser |
| MOB-suite cluster codes don't match published outbreak paper | v2 vs v3 incompatibility | Re-run with matched MOB-suite version; document |
| Point-mutation panel coverage list flips between AMRFinderPlus minor releases | DB schema change | amrfinder --list_organisms and record the version |
| TB-Profiler bundled DB predates WHO 2nd edition | DB not updated | tb-profiler update_tbdb and verify catalogue edition |
| Pushback | Response |
|---|---|
| "Why AMRFinderPlus, not RGI?" | AMRFinderPlus uses gene-family HMMs and NCBI-curated cutoffs that catch divergent novel variants without producing the Loose-tier noise of RGI; both are valid and hamronize lets the reviewer compare |
| "How were Group 3 WHO Mtb mutations handled?" | Reported as "Uncertain significance -- phenotypic DST recommended"; not collapsed to S |
| "What about heteroresistance?" | Read-based deep variant calling supplements assembly-based AMR for clinically critical drugs; report MAF |
| "Why not just trust ResFinder phenotype prediction?" | EUCAST/CLSI breakpoint year must be documented; rule-based phenotype prediction inherits its curation as a hidden dependency. Pair with explicit gene + class reporting |
| "Why long-read assembly for AMR?" | Short-read drafts fragment plasmid contigs and lose MGE / promoter context (e.g., ISEcp1 upstream of ampC; Tn4401 variants); long-read or hybrid is mandatory for any mobility / regulatory claim |
| "Why hAMRonization rather than tool-native outputs?" | Cross-tool comparison requires schema unification; PHA4GE is the public-health consensus |
| "Was the intrinsic vs acquired distinction considered?" | Yes -- --organism activates suppression of clinically inert intrinsic genes; reported separately |
© GPTomics, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files in epidemiological-genomics/amr-surveillance of GPTomics/bioSkills.
Open the folder on GitHubat commit d91ed3d
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in GPTomics/bioSkills, which our catalogue first saw on October 7, 2026.
Bio Epidemiological Genomics Amr Surveillance 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Bio Epidemiological Genomics Amr Surveillance this skillGPTomics/bioSkills | 1.2k | 1 repos | ~7.6k | Automated safety check: Pass | MIT | |
| Pathway EnrichmentK-Dense-AI/scientific-agent-skills | 48k | 1 repos | ~4.2k | Automated safety check: Pass | MIT | |
| Celltype Specificity ProfilerClawBio/ClawBio | 1.2k | — | ~4.3k | Automated safety check: Pass | MIT | |
| Alphagenome Single Variant Analysisgoogle-deepmind/science-skills | 3.2k | 2 repos | ~3k | Automated safety check: Notes | Apache-2.0 | |
| 13C Metabolic Flux AnalysisK-Dense-AI/scientific-agent-skills | 48k | 1 repos | ~3.2k | Automated safety check: Pass | MIT | |
| Clinvar Databasegoogle-deepmind/science-skills | 3.2k | 2 repos | ~3.9k | Automated safety check: Notes | Apache-2.0 |
K-Dense-AI/scientific-agent-skills
Performs pathway and gene-set enrichment analysis on gene lists or ranked gene data and interprets the results.
ClawBio/ClawBio
Given a gene and a single-cell atlas, compute how cell-type-specific its expression is — the tau specificity index, Sarle's expression bimodality coefficient, and the cell types that drive the…
google-deepmind/science-skills
Analyzes genetic variant effects on gene expression (RNA-seq), chromatin accessibility (DNASE), histone marks (ChIP), and transcription factors using the AlphaGenome API.
K-Dense-AI/scientific-agent-skills
Estimates reaction fluxes inside cells from steady-state carbon-13 labeling data with a bundled mfapy-based solver, and reports which fluxes the data pin down.
google-deepmind/science-skills
A skill your agent uses when needing clinical significance, pathogenicity classifications (e.g., Pathogenic, Benign, VUS), clinical evidence rationales, or finding "hard positive" benchmark controls…
aiming-lab/AutoResearchClaw
Turns a broad metabolic modelling topic into a concrete, paper-shaped plan with organism, model, perturbations, metrics and figures before any FBA code is written.
GPTomics/bioSkills
Read, write, and convert multiple sequence alignment files using Biopython Bio.AlignIO.
GPTomics/bioSkills
Installs the bioSkills collection of 425 bioinformatics skills in one step, or only chosen categories, so sequencing, RNA-seq, single-cell and variant tasks get specialized help.
GPTomics/bioSkills
Write biological sequences to files (FASTA, FASTQ, GenBank, EMBL) using Biopython Bio.SeqIO.
GPTomics/bioSkills
Soft- or hard-clips PCR primer footprints from aligned amplicon BAMs so primer bases stop masquerading as confirmed reference sequence.
GPTomics/bioSkills
Filters BAM alignments by FLAG bits, mapping quality and regions with samtools view or pysam, with recipes for common keep and drop cases.
GPTomics/bioSkills
Create and use BAI/CSI indices for BAM/CRAM files using samtools and pysam.
Categories
Detects acquired antimicrobial-resistance determinants and chromosomal point-mutation resistance in bacterial assemblies using AMRFinderPlus, ResFinder 4.0 (acquired + PointFinder), CARD-RGI…. Bio Epidemiological Genomics Amr Surveillance is an agent skill from GPTomics/bioSkills.0 (acquired + PointFinder), CARD-RGI, abritAMR, staramr, and species-specific callers (TB-Profiler, Mykrobe).
Bio Epidemiological Genomics Amr Surveillance fits situations like: screening clinical; surveillance isolates for AMR; distinguishing acquired vs intrinsic vs point-mutation resistance; calling rpoB / katG / pncA / gyrA / mgrB mutations.
Run `npx skills add GPTomics/bioSkills --skill bio-epidemiological-genomics-amr-surveillance -a claude-code`. Or copy the skill folder (epidemiological-genomics/amr-surveillance in GPTomics/bioSkills) into .claude/skills/bio-epidemiological-genomics-amr-surveillance in your project. Claude Code loads it when a task matches its description.
Run `npx skills add GPTomics/bioSkills --skill bio-epidemiological-genomics-amr-surveillance -a codex`. Or copy the skill folder (epidemiological-genomics/amr-surveillance in GPTomics/bioSkills) into .agents/skills/bio-epidemiological-genomics-amr-surveillance in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add GPTomics/bioSkills --skill bio-epidemiological-genomics-amr-surveillance -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/bio-epidemiological-genomics-amr-surveillance, .gemini/skills/bio-epidemiological-genomics-amr-surveillance, .github/skills/bio-epidemiological-genomics-amr-surveillance and .opencode/skills/bio-epidemiological-genomics-amr-surveillance in your project.
Going by SKILL.md and its folder, Bio Epidemiological Genomics Amr Surveillance needs Python for the scripts in its folder and the command-line tools its instructions call (pip). Our summary lists: Python 3.
SKILL.md contains no URLs. Its commands use pip, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Bio Epidemiological Genomics Amr Surveillance is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 7.6k tokens (SKILL.md is roughly 30k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Bio Epidemiological Genomics Amr Surveillance: Pathway Enrichment (K-Dense-AI/scientific-agent-skills, 48k stars), Celltype Specificity Profiler (ClawBio/ClawBio, 1.2k stars), Alphagenome Single Variant Analysis (google-deepmind/science-skills, 3.2k stars) and 13C Metabolic Flux Analysis (K-Dense-AI/scientific-agent-skills, 48k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
GPTomics (a GitHub organization) maintains it in GPTomics/bioSkills, which has 1,218 GitHub stars. The repository holds 559 skills in this directory. The repository was last updated on August 15, 2026.
Source: GPTomics/bioSkills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.