personal-genomics

personal-genomics is a skill for Claude Code, Codex from sammcj/agentic-coding. It costs 56 tokens per session (1,333 once invoked), scanned A, original, Apache-2.0.

A local toolkit for analysing raw DNA and genome files from services such as 23andMe, AncestryDNA, and sequencing systems. It reports findings about medication responses, health risks, carrier status, ancestry, and traits without sending genetic data away.

In plain words
What is it for?
Use it to analyse supported DNA exports and VCF or CRAM-related files, combine sources, and produce a report of genetic findings.
Why use it?
It brings results from multiple DNA files into one offline analysis, reducing the need to interpret raw genetic data manually or upload it to another service.

Skill for Claude CodeCodex

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.

agentmods
npx agentmods add skills/sammcj/agentic-coding/personal-genomics
Any agent
npx skills add sammcj/agentic-coding --skill personal-genomics
Clone the repo
git clone --depth 1 https://github.com/sammcj/agentic-coding

Made for: Claude Code, Codex.

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 personal-genomics

README.md
[![agentmods](https://agentmods.dev/badge/skills/sammcj/agentic-coding/personal-genomics.svg)](https://agentmods.dev/skills/sammcj/agentic-coding/personal-genomics)
Your own site
<a href="https://agentmods.dev/skills/sammcj/agentic-coding/personal-genomics"><img src="https://agentmods.dev/badge/skills/sammcj/agentic-coding/personal-genomics.svg" alt="Measured on agentmods" height="20"></a>
Per session 56 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,333 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
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 $0.00056 $0.01333
Opus 5 $0.00028 $0.00666
Sonnet 5 $0.00011 $0.00267
Haiku 4.5 $0.00006 $0.00133

Measured yesterday against content hash 9e952ef450dc, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

personal-genomics 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.

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_disabled/personal-genomics/SKILL.md · 82 lines

How it starts

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

Personal Genomics

Runs the local personal-genomics toolkit over one or more raw DNA files and reports the findings. All analysis is offline; genetic data never leaves the machine.

First: track the workflow

Create a task for each step below, then work them to completion. The run is multi-step and the reporting step (surfacing findings safely) is the one most often skipped once the analysis file is written.

Locate the toolkit

The scripts and their virtualenv live at ~/git/personal-genomics (a .venv/ with pandas/numpy/scipy/reportlab). Use that venv's Python: ~/git/personal-genomics/.venv/bin/python.

If the repo or venv is missing, set it up before analysing:

cd ~/git/personal-genomics && python3 -m venv .venv && .venv/bin/pip install -r requirements.txt

If the toolkit lives elsewhere, ask the user for the path rather than guessing.

Locate the input files

Ask the user where their DNA file(s) are if not already given. Common location is ~/Downloads/DNA/. Supported inputs:

  • Array exports: 23andMe, AncestryDNA, MyHeritage, FTDNA (tab-delimited rsid text)
  • Sequencing: .vcf / .vcf.gz (whole genome or exome)

A .cram.crai on its own is not usable (it is only an index; the alignment data is in the .cram it points to). See Gotchas for what to do when the .cram itself is available.

Choose single-source or combined

One file -> comprehensive_analysis.py:

~/git/personal-genomics/.venv/bin/python ~/git/personal-genomics/comprehensive_analysis.py <file> --out <dir>

Two or more files -> combine_sources.py, which merges them first:

~/git/personal-genomics/.venv/bin/python ~/git/personal-genomics/combine_sources.py <file1> <file2> ... --out <dir>

Always merge when more than one source exists. A variants-only VCF (the usual WGS export) lists only sites where the person differs from the reference, so every homozygous-reference site is absent. The marker analysis treats an absent rsID as "not tested" and skips it, which makes a rich WGS file yield fewer findings than an array on its own. Merging restores the array's reference/normal calls and keeps the WGS's rare variants, producing a strict superset. The combiner resolves contested sites to the sequencing call and writes merge_stats.json recording overlap, agreement, and strand-flip counts.

Read the full file on GitHub · 82 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 First seen · 82 lines · 56 tokens per session scan A 9e952ef450dc

Subscribe to this mod's changes

personal-genomics is a skill published in the GitHub repository sammcj/agentic-coding (159 stars, last pushed yesterday), licensed Apache-2.0. It adds 56 tokens to every session and 1,333 once invoked, about $0.0003 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-09-03.

Related

Other skills, from other repositories

claude-scientific-skills

Scientific research and analysis skills.

beel-collab/presets.dev · 5 tokens

uniprot-database

Direct REST API access to UniProt. Protein searches, FASTA retrieval, ID mapping, Swiss-Prot/TrEMBL. For Python workflows with multiple databases, prefer bioservices (unified interface to 40+ services). Use this for direct HTTP/REST work or UniProt-specific control.

beel-collab/presets.dev · 60 tokens

strands-review

Local preview of the strands-agents/devtools /strands review agent. Body is the upstream Task Reviewer SOP verbatim — do not paraphrase. Use when the user types /strands-review, asks for a "strands review" of a PR, or wants to anticipate what the remote /strands review GitHub Action will flag. Findings are close but…

strands-agents/harness-sdk · 125 tokens

pr-writer

Generates pull request titles and descriptions. Use when the user asks to create, open, write, draft, or generate a PR, pull request, or merge request description.

strands-agents/harness-sdk · 39 tokens

docs-writer

Draft or rewrite Strands Agents documentation pages. Use when writing new doc pages, rewriting pages that failed audit, drafting sections for existing pages, or writing blog posts and release notes about Strands. Also triggers on "write a doc", "draft a page", "rewrite the quickstart", "add a tutorial for X"…

strands-agents/harness-sdk · 74 tokens

pr-feedback

Fetches PR review feedback and inline comments, categorizes them, and presents options to the user. Use when the user asks to get, read, address, or fix review comments on a pull request.

strands-agents/harness-sdk · 44 tokens