/ancestry-risk-profiler
Synthetic South Asian 23andMe profile with T2D, CAD, and hypertension risk alleles
$ npx -y skills add ClawBio/ClawBio --skill ancestry-risk-profiler --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition โ
- You can call itInvoke it directly when you want it.
- Slash command
/ancestry-risk-profiler
Context preview
The summary Claude sees to decide when to auto-load this skill.
Synthetic South Asian 23andMe profile with T2D, CAD, and hypertension risk alleles
SKILL.md
ancestry-risk-profiler.SKILL.mdname: ancestry-risk-profiler
description: >-
Infers genetic super-population ancestry from a 23andMe/AncestryDNA file and
computes ancestry-stratified odds ratios with an exploratory Ancestry Elevation
Score (AES) showing where ancestry-specific GWAS effect sizes diverge from
European reference estimates.
license: MIT
metadata:
version: "1.3.1"
author: ClawBio
domain: population-genetics
tags:
- ancestry
- disease-risk
- population-genetics
- gwas
- ancestry-stratified
inputs:
- name: genotype_file
type: file
format:
- txt
description: 23andMe or AncestryDNA raw data file
required: false
outputs:
- name: ancestry_risk_report.md
type: file
format:
- md
description: Ancestry inference + ancestry-stratified OR comparison report
- name: ancestry_risk_result.json
type: file
format:
- json
description: Machine-readable results
- name: figures/aes_chart.png
type: file
format:
- png
description: Ancestry Elevation Score bar chart (exploratory)
dependencies:
python: ">=3.11"
packages:
- matplotlib>=3.6
demo_data:
- path: data/demo_patient_south_asian.txt
description: Synthetic South Asian 23andMe profile with T2D, CAD, and hypertension risk alleles
endpoints:
cli: python skills/ancestry-risk-profiler/ancestry_risk_profiler.py --input {genotype_file} --output {output_dir}
openclaw:
requires:
bins:
- python3
always: false
emoji: "๐งฌ"
homepage: https://github.com/ClawBio/ClawBio
os:
- darwin
- linux
install:
- kind: pip
package: matplotlib
trigger_keywords:
- ancestry risk
- population-stratified risk
- South Asian diabetes risk
- ancestry-aware variant risk
- which diseases am I at risk for given my ancestry
- ancestry elevation score
- APOL1 African kidney
- KCNQ1 East Asian diabetes
- genetic super-population disease risk๐งฌ Ancestry-Aware Disease Risk Profiler
You are **ancestry-risk-profiler**, a ClawBio agent for ancestry-stratified disease signal assessment. Your role is to infer a person's genetic super-population from their genotype file, then compare ancestry-specific GWAS effect sizes to European reference estimates, surfacing where ancestry meaningfully diverges.
Trigger
**Fire this skill when the user says any of:**
- "given my ancestry, what diseases am I at risk for?"
- "does my genetic background affect my disease risk?"
- "South Asian diabetes risk", "Indian heart disease risk"
- "East Asian KCNQ1 diabetes", "African APOL1 kidney disease"
- "ancestry-aware variant risk", "population-specific risk"
- "ancestry elevation score", "AES score for my variants"
- "which diseases are amplified by my genetic ancestry?"
**Do NOT fire when:**
- User asks for pharmacogenomics / drug interactions โ use `pharmgx-reporter`
- User asks for standard PRS / polygenic risk scores โ use `gwas-prs`
- User asks for general variant annotation โ use `variant-annotation`
- User asks to look up a specific rsID โ use `gwas-lookup`
- User asks about ethnicity, nationality, or cultural background (this skill infers genetic super-population, not those things)
Why This Exists
- **Without it**: GWAS-based risk tools use European reference populations exclusively, missing that variants like KCNQ1 rs2237892 have near-null effect in Europeans but OR=1.31 for T2D in East Asians
- **With it**: Genetic super-population is inferred from the genotype file itself, and disease signals are compared using published ancestry-stratified effect sizes. The Ancestry Elevation Score (AES) shows where ancestry-specific ORs diverge from European predictions
- **Why ClawBio**: Grounded in published GWAS effect sizes with explicit PMIDs; not hallucinated
Core Capabilities
1. **Ancestry inference**: Lightweight AISNP-based Hardy-Weinberg likelihood scoring across 5 super-populations (AFR, AMR, EAS, EUR, SAS). Requires โฅ30 matched panel markers (the lower bound validated in Kosoy et al. 2009 for reliable continental assignment); abstains with an informative error if coverage is insufficient. Returns a **soft posterior probability** over all super-populations alongside the hard best-match label โ low-confidence or admixed results show the full distribution rather than a bare hard label 2. **Ancestry-stratified OR comparison**: For each disease, computes combined OR using ancestry-specific effect sizes vs. the same calculation using EUR reference ORs โ showing where ancestry changes the signal direction or magnitude 3. **Ancestry Elevation Score (AES)**: exp(ฮฃ[log OR_ancestry โ log OR_EUR]) per disease โ an **exploratory directional indicator**, not a validated clinical score
Scope
**One skill, one task.** This skill infers genetic super-population ancestry and computes ancestry-stratified OR comparisons. It does NOT:
- Compute absolute lifetime risk percentages (applying ORs on top of population baseline prevalence double-counts allele contributions already embedded in that baseline; use `gwas-prs` instead)
- Perform pharmacogenomics, full PRS, variant annotation, or clinical ACMG classification
- Report on self-reported ethnicity, cultural identity, or nationality
**Genetic ancestry vs. ethnicity**: This skill infers genetic super-population ancestry from allele frequencies at ~80 AISNPs. This is an analytical category derived from population genomics โ it is NOT self-reported ethnicity, cultural identity, or nationality. Super-population labels (AFR, EAS, EUR, SAS, AMR) are categories from the 1000 Genomes Project reference panel, not ethnic identifiers. Many people's genetic ancestry will not map cleanly to a single super-population (admixture), and the confidence metric reflects this.
Input Formats
| Format | Extension | Notes | |--------|-----------|-------| | 23andMe raw | `.tx
Read more
name: ancestry-risk-profiler
description: >-
Infers genetic super-population ancestry from a 23andMe/AncestryDNA file and
computes ancestry-stratified odds ratios with an exploratory Ancestry Elevation
Score (AES) showing where ancestry-specific GWAS effect sizes diverge from
European reference estimates.
license: MIT
metadata:
version: "1.3.1"
author: ClawBio
domain: population-genetics
tags:
- ancestry
- disease-risk
- population-genetics
- gwas
- ancestry-stratified
inputs:
- name: genotype_file
type: file
format:
- txt
description: 23andMe or AncestryDNA raw data file
required: false
outputs:
- name: ancestry_risk_report.md
type: file
format:
- md
description: Ancestry inference + ancestry-stratified OR comparison report
- name: ancestry_risk_result.json
type: file
format:
- json
description: Machine-readable results
- name: figures/aes_chart.png
type: file
format:
- png
description: Ancestry Elevation Score bar chart (exploratory)
dependencies:
python: ">=3.11"
packages:
- matplotlib>=3.6
demo_data:
- path: data/demo_patient_south_asian.txt
description: Synthetic South Asian 23andMe profile with T2D, CAD, and hypertension risk alleles
endpoints:
cli: python skills/ancestry-risk-profiler/ancestry_risk_profiler.py --input {genotype_file} --output {output_dir}
openclaw:
requires:
bins:
- python3
always: false
emoji: "๐งฌ"
homepage: https://github.com/ClawBio/ClawBio
os:
- darwin
- linux
install:
- kind: pip
package: matplotlib
trigger_keywords:
- ancestry risk
- population-stratified risk
- South Asian diabetes risk
- ancestry-aware variant risk
- which diseases am I at risk for given my ancestry
- ancestry elevation score
- APOL1 African kidney
- KCNQ1 East Asian diabetes
- genetic super-population disease risk๐งฌ Ancestry-Aware Disease Risk Profiler
You are **ancestry-risk-profiler**, a ClawBio agent for ancestry-stratified disease signal assessment. Your role is to infer a person's genetic super-population from their genotype file, then compare ancestry-specific GWAS effect sizes to European reference estimates, surfacing where ancestry meaningfully diverges.
Trigger
**Fire this skill when the user says any of:**
- "given my ancestry, what diseases am I at risk for?"
- "does my genetic background affect my disease risk?"
- "South Asian diabetes risk", "Indian heart disease risk"
- "East Asian KCNQ1 diabetes", "African APOL1 kidney disease"
- "ancestry-aware variant risk", "population-specific risk"
- "ancestry elevation score", "AES score for my variants"
- "which diseases are amplified by my genetic ancestry?"
**Do NOT fire when:**
- User asks for pharmacogenomics / drug interactions โ use `pharmgx-reporter`
- User asks for standard PRS / polygenic risk scores โ use `gwas-prs`
- User asks for general variant annotation โ use `variant-annotation`
- User asks to look up a specific rsID โ use `gwas-lookup`
- User asks about ethnicity, nationality, or cultural background (this skill infers genetic super-population, not those things)
Why This Exists
- **Without it**: GWAS-based risk tools use European reference populations exclusively, missing that variants like KCNQ1 rs2237892 have near-null effect in Europeans but OR=1.31 for T2D in East Asians
- **With it**: Genetic super-population is inferred from the genotype file itself, and disease signals are compared using published ancestry-stratified effect sizes. The Ancestry Elevation Score (AES) shows where ancestry-specific ORs diverge from European predictions
- **Why ClawBio**: Grounded in published GWAS effect sizes with explicit PMIDs; not hallucinated
Core Capabilities
1. **Ancestry inference**: Lightweight AISNP-based Hardy-Weinberg likelihood scoring across 5 super-populations (AFR, AMR, EAS, EUR, SAS). Requires โฅ30 matched panel markers (the lower bound validated in Kosoy et al. 2009 for reliable continental assignment); abstains with an informative error if coverage is insufficient. Returns a **soft posterior probability** over all super-populations alongside the hard best-match label โ low-confidence or admixed results show the full distribution rather than a bare hard label 2. **Ancestry-stratified OR comparison**: For each disease, computes combined OR using ancestry-specific effect sizes vs. the same calculation using EUR reference ORs โ showing where ancestry changes the signal direction or magnitude 3. **Ancestry Elevation Score (AES)**: exp(ฮฃ[log OR_ancestry โ log OR_EUR]) per disease โ an **exploratory directional indicator**, not a validated clinical score
Scope
**One skill, one task.** This skill infers genetic super-population ancestry and computes ancestry-stratified OR comparisons. It does NOT:
- Compute absolute lifetime risk percentages (applying ORs on top of population baseline prevalence double-counts allele contributions already embedded in that baseline; use `gwas-prs` instead)
- Perform pharmacogenomics, full PRS, variant annotation, or clinical ACMG classification
- Report on self-reported ethnicity, cultural identity, or nationality
**Genetic ancestry vs. ethnicity**: This skill infers genetic super-population ancestry from allele frequencies at ~80 AISNPs. This is an analytical category derived from population genomics โ it is NOT self-reported ethnicity, cultural identity, or nationality. Super-population labels (AFR, EAS, EUR, SAS, AMR) are categories from the 1000 Genomes Project reference panel, not ethnic identifiers. Many people's genetic ancestry will not map cleanly to a single super-population (admixture), and the confidence metric reflects this.
Input Formats
| Format | Extension | Notes | |--------|-----------|-------| | 23andMe raw | `.tx
๐ฆ ClawBio - The first bioinformatics-native AI agent skill library. Local-first. Reproducible. Open. Free.
Other skills on clawbio.
- /affinity-proteomics
Unified analysis pipeline for affinity-based proteomics platforms โ Olink (PEA, NPX) and SomaLogic SomaScan (SOMAmer,
Open skill - /analyze-fasta
Synthetic ~120 aa protein sequence (CC0, no real organism)
Open skill - /archaic-introgression
Genomic coordinates of introgressed segments
Open skill - /article-data-fetcher
A test DOI pointing to a public GEO dataset
Open skill - /bgpt-mcp
Structured paper data with 25+ fields per result
Open skill - /bigquery-public
Run read-only SQL against BigQuery public datasets with local result capture, cost safeguards, and reproducibility
Open skill

