nutrigx_advisor
Nutrigenomics advisor — personalized nutrition guidance based on genetic profiles
What this skill does
# NutriGx Advisor — Personalised Nutrition from Genetic Data **Skill ID**: `nutrigx-advisor` **Version**: 0.1.0 **Status**: MVP **Author**: David de Lorenzo (ClawBio Community) **Requires**: Python 3.11+, pandas, numpy, matplotlib, seaborn, reportlab (optional) --- ## What This Skill Does The NutriGx Advisor generates a **personalised nutrition report** from consumer genetic data (23andMe, AncestryDNA raw files or VCF). It interrogates a curated set of nutritionally-relevant SNPs drawn from GWAS Catalog, ClinVar, and peer-reviewed nutrigenomics literature, then translates genotype calls into actionable dietary and supplementation guidance — all computed locally. **Key outputs** - Markdown nutrition report with risk scores and recommendations - Radar chart of nutrient risk profile - Gene × nutrient heatmap - Reproducibility bundle (`commands.sh`, `environment.yml`, SHA-256 checksums) --- ## Trigger Phrases The Bio Orchestrator should route to this skill when the user says anything like: - "personalised nutrition", "nutrigenomics", "diet genetics" - "what should I eat based on my DNA" - "nutrient metabolism", "vitamin absorption genetics" - "MTHFR", "APOE", "FTO", "BCMO1", "VDR", "FADS1/2" - "folate", "omega-3", "vitamin D", "caffeine metabolism", "lactose", "gluten" - Input files: `.txt` or `.csv` (23andMe), `.csv` (AncestryDNA), `.vcf` --- ## Curated SNP Panel ### Macronutrient Metabolism | Gene | SNP | Nutrient Impact | Evidence | |---------|------------|------------------------------------------|----------| | FTO | rs9939609 | Energy balance, fat mass, carb sensitivity | Strong (GWAS) | | PPARG | rs1801282 | Fat metabolism, insulin sensitivity | Moderate | | APOA5 | rs662799 | Triglyceride response to dietary fat | Strong | | TCF7L2 | rs7903146 | Carbohydrate metabolism, T2D risk | Strong | | ADRB2 | rs1042713 | Fat oxidation, exercise × diet interaction | Moderate | ### Micronutrient Metabolism | Gene | SNP | Nutrient | Effect of risk allele | |---------|------------|-------------------------|----------------------------------| | MTHFR | rs1801133 | Folate / B12 | ↓ 5-MTHF conversion (~70%) | | MTHFR | rs1801131 | Folate / B12 | ↓ enzyme activity (~30%) | | MTR | rs1805087 | B12 / homocysteine | ↑ homocysteine risk | | BCMO1 | rs7501331 | Beta-carotene → Vitamin A | ↓ conversion (~50%) | | BCMO1 | rs12934922 | Beta-carotene → Vitamin A | ↓ conversion (compound het) | | VDR | rs2228570 | Vitamin D absorption | ↓ VDR function | | VDR | rs731236 | Vitamin D | ↓ bone mineral density response | | GC | rs4588 | Vitamin D binding | ↑ deficiency risk | | SLC23A1 | rs33972313 | Vitamin C transport | ↓ renal reabsorption | | ALPL | rs1256335 | Vitamin B6 | ↓ alkaline phosphatase activity | ### Omega-3 / Fatty Acid Metabolism | Gene | SNP | Nutrient | Effect | |---------|------------|----------------------|---------------------------------| | FADS1 | rs174546 | LC-PUFA synthesis | ↑/↓ EPA/DHA from ALA | | FADS2 | rs1535 | LC-PUFA synthesis | Modulates omega-6:omega-3 ratio | | ELOVL2 | rs953413 | DHA synthesis | ↓ elongation of EPA→DHA | | APOE | rs429358 | Saturated fat response | ε4 → ↑ LDL-C on high SFA diet | | APOE | rs7412 | Saturated fat response | Combined with rs429358 for ε typing | ### Caffeine & Alcohol | Gene | SNP | Compound | Effect | |---------|------------|-------------|--------------------------------| | CYP1A2 | rs762551 | Caffeine | Slow/Fast metaboliser | | AHR | rs4410790 | Caffeine | Modulates CYP1A2 induction | | ADH1B | rs1229984 | Alcohol | Acetaldehyde accumulation risk | | ALDH2 | rs671 | Alcohol | Asian flush / toxicity risk | ### Food Sensitivities | Gene | SNP | Sensitivity | Effect | |---------|------------|----------------------|---------------------------------| | MCM6 | rs4988235 | Lactose intolerance | Non-persistence of lactase | | HLA-DQ2 | Proxy SNPs | Coeliac / gluten | HLA-DQA1/DQB1 risk haplotypes | ### Antioxidant & Detoxification | Gene | SNP | Pathway | Effect | |---------|------------|----------------------|---------------------------------| | SOD2 | rs4880 | Manganese SOD | ↓ mitochondrial antioxidant | | GPX1 | rs1050450 | Selenium / GSH-Px | ↓ glutathione peroxidase | | GSTT1 | Deletion | Glutathione-S-trans | Null genotype → ↑ oxidative risk| | NQO1 | rs1800566 | Coenzyme Q10 | ↓ CoQ10 regeneration | | COMT | rs4680 | Catechol / B vitamins | Met/Val → methylation load | --- ## Algorithm ### 1. Input Parsing (`parse_input.py`) Accepts: - 23andMe `.txt` or `.csv` (tab-separated: rsid, chromosome, position, genotype) - AncestryDNA `.csv` - Standard VCF (extracts GT field) Auto-detects format from header lines. Normalises alleles to forward strand using a hard-coded reference table (avoids requiring external databases). ### 2. Genotype Extraction (`extract_genotypes.py`) For each SNP in the panel: 1. Look up rsid in parsed data 2. Return genotype string (e.g. `"AT"`, `"TT"`, `"AA"`) 3. Flag as `"NOT_TESTED"` if absent (common for chip-to-chip variation) ### 3. Risk Scoring (`score_variants.py`) Each SNP is scored on a **0 / 0.5 / 1.0** scale: - `0.0` — homozygous reference (lowest risk) - `0.5` — heterozygous - `1.0` — homozygous risk allele Composite **Nutrient Risk Scores** (0–10) are computed per nutrient domain by summing weighted SNP scores. Weights are derived from reported effect sizes (beta coefficients or OR) in the primary literature. Risk categories: - **0–3**: Low risk — standard dietary advice applies - **3–6**: Moderate risk — dietary optimisation recommended - **6–10**: Elevated risk — consider testing and targeted supplementation > **Important caveat**: These are polygenic risk indicators based on common > variants. They are not diagnostic. Rare pathogenic variants (e.g. MTHFR > compound heterozygosity with high homocysteine) require clinical confirmation. ### 4. Report Generation (`generate_report.py`) Outputs a structured Markdown report with: - Executive summary (top 3 personalised findings) - Per-nutrient sections: genotype table → interpretation → recommendation - Radar chart (matplotlib) of nutrient risk scores - Gene × nutrient heatmap (seaborn) - Supplement interactions table - Disclaimer section - Reproducibility block ### 5. Reproducibility Bundle (`repro_bundle.py`) Exports to the output directory (not committed to the repo): - `commands.sh` — full CLI to reproduce analysis - `environment.yml` — pinned conda environment - `checksums.txt` — SHA-256 checksums of input and output files - `provenance.json` — timestamp and ClawBio version tag --- ## Usage ```bash # From 23andMe raw data openclaw "Generate my personalised nutrition report from genome.csv" # From VCF openclaw "Run NutriGx analysis on variants.vcf and flag any folate pathway risks" # Targeted query openclaw "What does my APOE status mean for my saturated fat intake?" # Generate a random demo patient and run the report python examples/generate_patient.py --run ``` --- ## File Structure ``` skills/nutrigx-advisor/ ├── SKILL.md ← this file (agent instructions) ├── nutrigx_advisor.py ← main entry point ├── parse_input.py ← multi-format parser ├── extract_genotypes.py ← SNP lookup engine ├── score_variants.py ← risk scoring algorithm ├── generate_report
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.