Apply published polygenic scores from PGS Catalog to approved local personal DNA and return raw weighted score plus overlap QC.

Apache-2.0Auto-check passedResearch & Science

Install PRs

skills CLI
$ npx skills add exon-research/genomi --skill prs -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install exon-research/genomi prs --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/exon-research/genomi.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/prs .claude/skills/prs && rm -rf skills-src

Use ~/.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/

Facts

Skill name
prs
GitHub stars
484
Token cost
~2.5k tokens
SKILL.md length
1,319 words
Files
1
Skills in repo
20
Repo updated
First seen
Licence
Apache-2.0

At a glance

Apply published polygenic scores from PGS Catalog to approved local personal DNA and return raw weighted score plus overlap QC.

  • Works in 6 steps: Use prs.search_scores for public trait… → Use prs.fetch_score_metadata when the… → Use prs.calculate_score with the chosen… → …
  • Research & Science work in your project
  • SKILL.md covers Boundaries, Workflow, When published calibration is… and Answering, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

PRs is an agent skill from exon-research/genomi. Apply published polygenic scores from PGS Catalog to approved local personal DNA and return raw weighted score plus overlap QC.

Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Research & Science. The repository describes itself as: Local-first, open-source Claude Science alternative, before Claude Science is a thing. Turn your AI agent into personal DNA expert. The licence is Apache-2.0.

When your agent uses it

  • Research & Science work in your project

Example prompts

  • “/prs”

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Use prs.search_scores for public trait or score discovery. If the user
  2. Use prs.fetch_score_metadata when the source publication, build, variant
  3. Use prs.calculate_score with the chosen pgs_id and the user's genome
  4. Use prs.check_score_overlap when you only need readiness and QC without a
  5. Use prs.list_imported_scores when the user asks what scores are already
  6. Use prs.build_source_context when the user asks what PRS can or cannot

What it can do on your machine

Read from SKILL.md and the folder at commit 1df4f5b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

PRs loads about 2.5k tokens when it runs. Until then it costs about 33 tokens; SKILL.md has 1,319 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~33
When it runs · the whole SKILL.md, loaded when a task matches
~2.5k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from exon-research/genomi at commit 1df4f5b, republished under its Apache-2.0 licence (© exon-research). 1,319 words, ~2,513 tokens.

Download SKILL.mdSave it as .claude/skills/prs/SKILL.md (or your agent's skills folder).
name
prs
description
Apply published polygenic scores from PGS Catalog to approved local personal DNA and return raw weighted score plus overlap QC.
tools
prs.search_scores, prs.fetch_score_metadata, prs.list_imported_scores, prs.check_score_overlap, prs.calculate_score, prs.build_source_context

Polygenic Scores

Use this skill when the user asks about polygenic risk scores, PRS, PGS Catalog scores, common disease or trait risk from many variants, or applying a published scoring file to their genome.

Boundaries

  • PRS/PGS here means applying published variant weights from a scoring file. Genomi does not train new PRS models from GWAS summary statistics.
  • Default genome build is GRCh38 when omitted; use GRCh37 only when the Active Genome Index is GRCh37/hg19.
  • Active Genome Index artifacts stay local. Public score metadata may use PGS Catalog, but private genotypes are not uploaded to external services.
  • A raw PRS is common-risk or trait context, not a diagnosis, absolute disease risk, treatment recommendation, or clinical category.
  • Only state standardized score context when valid score_mean and score_sd are supplied for the same score, build, cohort/reference distribution, and scoring convention.
  • Do not use PRS output for ethnicity, identity, monogenic diagnosis, medication response, or rare-disease causality.

Workflow

  1. Use prs.search_scores for public trait or score discovery. If the user already supplies a PGS ID, use that ID directly.
  2. Use prs.fetch_score_metadata when the source publication, build, variant count, scoring-file URLs, licensing, or cohort/evaluation context matters.
  3. Use prs.calculate_score with the chosen pgs_id and the user's genome source to get the raw weighted score plus overlap QC.
  4. Use prs.check_score_overlap when you only need readiness and QC without a calculated score.
  5. Use prs.list_imported_scores when the user asks what scores are already available locally.
  6. Use prs.build_source_context when the user asks what PRS can or cannot tell them.

When published calibration is missing

PGS Catalog rarely publishes a reference cohort mean/SD, so a raw weighted score has units on an arbitrary scale. Deliver a defensible directional or quantitative answer for this specific question by combining capabilities that contribute orthogonal evidence — population allele frequencies feeding a closed-form z, direct effect-allele dosages at well-replicated lead loci, additional published scores derived by different methods, treatment-response context when the outcome is treatable, mechanism context from functional or pathway evidence, or whatever else Genomi currently exposes that fits. Disclose the assumptions of any closed-form estimate (HWE, variant independence, ancestry of the allele-frequency source).

Answering

When an Active Genome Index is scored or its overlap changes the result, report the score ID/source, genome build, overlap status, matched/missing/excluded variant counts, and whether the result is raw or calibrated. Do not add a routine Active Genome Index status line for public score metadata lookups.

Use careful language:

  • "The raw weighted score was calculated from N matched score variants."
  • "This is source-bound PRS context, not an absolute risk estimate."
  • "Performance may not transfer across ancestry/evaluation cohorts."
  • When grounded in an analytic z from gnomAD or a multi-score consensus: "Your analytic z relative to <population> under HWE is +X.X, ~Yth percentile. This is a closed-form estimate, not an empirical reference-cohort percentile."

Directional language ("leans above population average", "in the upper tertile of the analytic z distribution") is appropriate when grounded in the orthogonal evidence the synthesis combined.

Avoid:

  • Clinical-risk category labels (high/elevated/low risk) unless a validated calibration and category threshold from the same source context is explicitly supplied.
  • Absolute outcome probabilities ("X% chance of disease by age N") — these require an empirical risk-calibration model.
  • "This diagnoses", "rules out", "predicts disease", or "determines origin".

Cross-Capability Synthesis

A scope-limited result from this capability is not a final user-facing answer when other Genomi capabilities can contribute orthogonal evidence to the same question. Returning "cannot answer" while applicable capabilities remain unexamined is a host-agent failure mode.

Tools

prs.build_source_context

Explain PGS Catalog provenance, local scoring workflow, genome-build defaults, calibration limits, and PRS risk boundaries.

Use when: The user asks what PRS can and cannot tell them, whether PRS means common risk analysis, or how Genomi applies published scores.

Why necessary: PRS answers require explicit boundaries around calibration, cohort portability, missing variants, and clinical non-diagnosis.

Not for: Calculating a personal score; use prs.calculate_score after Active Genome Index access approval.

Example prompts: Explain how Genomi implements PRS. Does PRS give common disease risk?

Result semantics: Returns public method context only; it does not read Active Genome Index.

prs.calculate_score

Apply a published polygenic score to an approved Active Genome Index and return raw weighted score plus QC.

Use when: The user asks to calculate or apply a published PRS/PGS score to their genome.

Why necessary: This keeps Active Genome Index local, applies only selected published weights, reports overlap and build defaults, and avoids unsupported risk-category claims.

Not for: Training a new PRS model. Diagnosis, monogenic disease interpretation, medication response, or absolute-risk prediction without a validated calibration model. Ancestry or identity inference.

Example prompts: Calculate PGS000001 for my Active Genome Index. Apply this local scoring file to my GRCh38 genome.

Result semantics: Output is a raw weighted score and QC unless explicit calibration parameters are supplied. Do not phrase it as diagnosis, absolute disease risk, ethnicity, or clinical actionability.

Show full SKILL.md (514 more words)Show less
prs.check_score_overlap

Check how many variants from a polygenic score are usable in an approved Active Genome Index.

Use when: The agent needs PRS overlap/readiness before calculating or interpreting a published polygenic score.

Why necessary: A PRS score can be misleading with low variant overlap, build mismatch, unharmonized palindromic alleles, or missing genotype records.

Not for: Public score search; use prs.search_scores. Diagnosis or absolute risk classification.

Example prompts: Does my genome have enough overlap with PGS000001?

Result semantics: Reports overlap and calculation readiness only; missing score variants are not negative evidence for disease risk.

prs.fetch_score_metadata

Fetch detailed public PGS Catalog metadata for one score ID, including scoring-file URLs and source publication context.

Use when: The agent needs the exact PGS Catalog record context — trait, build, variant count, source publication, cohort, ancestry/evaluation, licensing — before explaining or applying a score.

Why necessary: The score metadata carries build, trait, source publication, cohort, ancestry/evaluation, and licensing context that determines whether applying a score is appropriate.

Not for: Calculating a personal score; use prs.calculate_score with the chosen pgs_id.

Example prompts: Fetch metadata for PGS000001.

Result semantics: Returns public PGS Catalog metadata only and may report source_unavailable if the external source cannot be reached.

prs.import_scoring_file

Import a PGS Catalog or local scoring file into Genomi's local PRS score cache for a declared genome build.

Use when: A score has been selected and needs to be materialized locally before overlap checking or scoring.

Why necessary: Private genotype scoring must run against local score artifacts rather than uploading genotypes to external services.

Not for: Reading Active Genome Index; import is public/local score materialization only. Interpreting the score as risk; use prs.calculate_score and preserve its limitations.

Example prompts: Import PGS000001 for GRCh38. Import this local scoring file for GRCh37.

Result semantics: Creates a local cache of variant weights and manifest metadata. The default genome_build is GRCh38 when omitted and is disclosed in defaults_applied.

prs.list_imported_scores

List polygenic scores available locally for use without reading Active Genome Index.

Use when: The user asks which polygenic scores are available locally.

Why necessary: Knowing which scores are already available locally helps the agent pick a matching genome build and avoid re-fetching.

Not for: Calculating personal PRS values; use prs.calculate_score after approval.

Example prompts: Which PRS scores are imported locally?

Result semantics: Lists local score-cache metadata only; it does not read Active Genome Index.

prs.search_scores

Search public PGS Catalog score metadata by trait, score ID, EFO term, or free-text query without reading Active Genome Index.

Use when: The user asks which published PGS/PRS scores exist for a trait or provides a PGS Catalog score ID.

Why necessary: Score selection is source-specific and must expose trait, build, variant count, publication, evaluation, and licensing context before using a score on Active Genome Index.

Not for: Reading or scoring a user's genome; pass the chosen pgs_id to prs.calculate_score after Active Genome Index access approval. Training a new PRS from GWAS summary statistics.

Example prompts: Find PGS Catalog scores for coronary artery disease. What is PGS000001?

Result semantics: Returns public score candidates and source metadata only; it does not read Active Genome Index.

© exon-research, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/prs of exon-research/genomi.

Open the folder on GitHubat commit 1df4f5b

Compare with similar skills

PRs 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.

PRs compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
PRs this skillexon-research/genomi484—~2.5kAutomated safety check: PassApache-2.0
Hypothesis Generationspacering-net/codeg3.8k15 repos~3.6kAutomated safety check: NotesMIT
GitHub Deep Researchbytedance/deer-flow83k5 repos~1.3kAutomated safety check: PassMIT
Nature Paper CardYuan1z0825/nature-skills46k2 repos~2.1kAutomated safety check: PassApache-2.0
Read arXiv Paperkarpathy/nanochat58k2 repos~494Automated safety check: PassMIT
Content Research Writerweapp-tailwindcss/weapp-tailwindcss1.9k25 repos~3.5kAutomated safety check: PassMIT

Similar skills

  • Hypothesis Generation

    spacering-net/codeg

    Structured hypothesis formulation from observations. An agent skill from spacering-net/codeg.

    3.8k GitHub starsUsed in 15 repos~3.6k tokens
    Research & ScienceAuto-check: notes
  • GitHub Deep Research

    bytedance/deer-flow

    Researches a GitHub repository over four rounds using the GitHub API and web search, then writes a structured markdown report with timeline, metrics and Mermaid diagrams.

    83k GitHub starsUsed in 5 repos~1.3k tokens
    Research & ScienceAuto-check passed
  • Nature Paper Card

    Yuan1z0825/nature-skills

    Builds a structured deep-reading card for one scientific paper, covering methods, how experiments support claims, limitations and research ideas, with a script to prepare the source.

    46k GitHub starsUsed in 2 repos~2.1k tokens
    Research & ScienceAuto-check passed
  • Read arXiv Paper

    karpathy/nanochat

    Fetches the TeX source of an arXiv paper from its URL, reads it and writes a markdown summary tied to the nanochat project.

    58k GitHub starsUsed in 2 repos~494 tokens
    Research & ScienceAuto-check passed
  • Content Research Writer

    weapp-tailwindcss/weapp-tailwindcss

    Assists in writing high-quality content by conducting research, adding citations, improving hooks, iterating on outlines, and providing real-time feedback on each section.

    1.9k GitHub starsUsed in 25 repos~3.5k tokens
    Research & ScienceAuto-check passed
  • Peer Review

    spacering-net/codeg

    Structured manuscript/grant review with checklist-based evaluation.

    3.8k GitHub starsUsed in 18 repos~5.9k tokens
    Research & ScienceAuto-check: notes

More from exon-research/genomi

All 20 skills in this repo
  • Genomi

    exon-research/genomi

    A skill your agent uses for genetics, genome source, variant, gene, phenotype, disease, screen, pharmacogenomics, and Genomi install/setup maintenance questions.

    484 GitHub stars~4k tokensUpdated 1 mo ago
    Auto-check passed
  • Genomi Gnomad

    exon-research/genomi

    Fetch reusable public population allele frequencies from gnomAD for a specific variant.

    484 GitHub stars~638 tokensUpdated 1 mo ago
    Auto-check passed
  • Genomilab

    exon-research/genomi

    Run or continue patient-authorized, genome-informed GenomiLab investigations in the current Claude, Codex, or other MCP agent task.

    484 GitHub stars~4.2k tokensUpdated 1 mo ago
    Auto-check passed
  • Analytical Grounding

    exon-research/genomi

    Retrieve canonical pathway members, cell-type marker records, and genomic interval feature overlaps from declared analytical sources.

    484 GitHub stars~1.2k tokensUpdated 1 mo ago
    Auto-check passed
  • Ancestry

    exon-research/genomi

    Use local ancestry reference-panel tools for 1000 Genomes GRCh37/GRCh38 PCA projection, marker overlap QC, and qualitative reference-neighbor context.

    484 GitHub stars~2.3k tokensUpdated 1 mo ago
    Auto-check passed
  • Clinvar

    exon-research/genomi

    Build and inspect ClinVar exact-match evidence and candidate inventories.

    484 GitHub stars~1.1k tokensUpdated 1 mo ago
    Auto-check passed

Questions about PRs

What does PRs do?

Apply published polygenic scores from PGS Catalog to approved local personal DNA and return raw weighted score plus overlap QC. PRs is an agent skill from exon-research/genomi. Apply published polygenic scores from PGS Catalog to approved local personal DNA and return raw weighted score plus overlap QC.

When should I use PRs?

PRs fits situations like: research & Science work in your project.

How do I install PRs in Claude Code?

Run `npx skills add exon-research/genomi --skill prs -a claude-code`. Or copy the skill folder (skills/prs in exon-research/genomi) into .claude/skills/prs in your project. Claude Code loads it when a task matches its description.

How do I install PRs in Codex?

Run `npx skills add exon-research/genomi --skill prs -a codex`. Or copy the skill folder (skills/prs in exon-research/genomi) into .agents/skills/prs in your project. Codex loads it when a task matches its description.

Can I use PRs in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add exon-research/genomi --skill prs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/prs, .gemini/skills/prs, .github/skills/prs and .opencode/skills/prs in your project.

What does PRs need to run?

SKILL.md names no scripts, command-line tools or credentials: PRs is instructions for the agent only.

Does PRs access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is PRs safe to install?

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.

What licence does PRs use?

PRs is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does PRs use?

About 2.5k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to PRs?

Skills that share tags, products or a category with PRs: Hypothesis Generation (spacering-net/codeg, 3.8k stars), GitHub Deep Research (bytedance/deer-flow, 83k stars), Nature Paper Card (Yuan1z0825/nature-skills, 46k stars) and Read arXiv Paper (karpathy/nanochat, 58k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains PRs?

exon-research (a GitHub organization) maintains it in exon-research/genomi, which has 484 GitHub stars. The repository holds 20 skills in this directory. The repository was last updated on August 31, 2026.

Source: exon-research/genomi on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.