Skip to main content

acmg-points

ci coverage no dependencies scheme rules License: MIT

Points-based ACMG/AMP variant classification, side by side with the 2015 combining rules — so you can see exactly where the two systems disagree on your evidence.

ClinGen is moving variant classification from the 2015 combining rules to a points system (Tavtigian 2020, the basis of the forthcoming SVC v4). Most labs still reason in 2015 rules; most calculators implement one system or the other. acmg-points runs both on the same evidence and flags the disagreements, with the provenance of every point.

pip install git+https://github.com/MargoSolo/acmg-points      # no dependencies
acmg-points classify PVS1 PP3
  PVS1  VeryStrong  +8
  PP3   Supporting  +1
  total             +9  → Likely pathogenic   [tavtigian2020]
  2015 rules        → Uncertain significance   (no 2015 combining rule met)
  ⚠️ SCHEMES DISAGREE

Where the systems disagree

Fourteen evidence sets from examples/cases.txt, placed on the points scale; the band gives the points class, and ✕ marks the sets where the 2015 rules say something else:

points vs 2015 rules

Three patterns worth knowing before a lab switches systems:

evidence points points class 2015 class why
PVS1 + PM2 +10 Pathogenic Likely pathogenic 2015 needs PVS1 + ≥ 2 Moderate for Pathogenic; points reach 10 with one
PVS1 + PP3 +9 Likely pathogenic VUS 2015 needs ≥ 2 Supporting next to PVS1; points need one
PS1 + PM1 + BS1 +2 VUS Likely pathogenic a lone benign Strong is invisible to the 2015 pathogenic rules; points subtract 4

Points resolve conflicting evidence by arithmetic; the 2015 rules only fall back to VUS when both a pathogenic and a benign rule are met. Full table: examples/compare.md.

Use

acmg-points classify PVS1 PM2_Supporting PP3      # modified strengths: CODE_Strength (also CODE:Strength, CODE-Sup)
acmg-points classify PS1 PM1 --json               # per-criterion points and both verdicts, machine-readable
acmg-points compare --file cases.txt              # one evidence set per line, '#' comments → markdown table
acmg-points table                                 # the scheme in force, with citation

Strengths: Supporting Moderate Strong VeryStrong (Sup/Mod/Str/VS), StandAlone for BA1. Applying a criterion twice is an error.

What is implemented — and what deliberately is not

flowchart LR
  E["applied criteria<br/>PVS1 · PM2_Supporting · BS1 …"] --> P["points<br/>Tavtigian 2020<br/>+1 +2 +4 +8 / −1 −2 −4 −8, BA1 = −8"]
  E --> R["2015 combining rules<br/>Richards 2015, Table 5<br/>counted at applied strength"]
  P --> V[both verdicts · disagree flag · JSON]
  R --> V
  • Points: Tavtigian et al. 2020, Hum Mutat 41:1734. Bands: Pathogenic ≥ 10 · Likely pathogenic 6–9 · VUS 0–5 · Likely benign −6…−1 · Benign ≤ −7.
  • 2015 rules: Richards et al. 2015, Genet Med 17:405, including the conflict rule. Criteria count at their applied strength (PM2_Supporting is a Supporting criterion), as ClinGen SVI modifiers intend.
  • Not implemented on purpose: any "SVC v4.0 points table". v4 is in pilot and unpublished. Schemes live in one file, schemes.py; when the official table appears it becomes a second scheme, not a rewrite.

This is a combiner, not a classifier: it assumes you have decided which criteria apply at which strength. It does not assess evidence, query gnomAD, or know VCEP gene-specific specifications. It will also happily sum criteria that should not be co-applied (e.g. PVS1 with PM4) — mutual-exclusion checks are on the roadmap.

Tests

Five pytest cases pin the published bands, the strength modifiers, the 2015 conflict rule and the three divergences above; CI also regenerates the comparison table.

Roadmap

Official SVC v4.0 table as a drop-in scheme · SVI modifier library (PVS1 decision tree, calibrated PP3/BP4) · co-application checks · VCEP-specific schemes · batch from CSV / VCF INFO · JOSS paper.

Cite

Solosenko M. acmg-points: points-based ACMG/AMP classification alongside the 2015 rules. 2026, v0.1.0. Please also cite Tavtigian et al. 2020 and Richards et al. 2015 — the science is theirs. MIT License.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

acmg_points-0.1.0.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

acmg_points-0.1.0-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file acmg_points-0.1.0.tar.gz.

File metadata

  • Download URL: acmg_points-0.1.0.tar.gz
  • Upload date:
  • Size: 10.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.5

File hashes

Hashes for acmg_points-0.1.0.tar.gz
Algorithm Hash digest
SHA256 06f210bde9921bf60b21f79e2d9ce4c7bc0d3f80d2b5a3fd8107335f18e448d6
MD5 2de4648f81d72cbd0e37e6ddb8901177
BLAKE2b-256 fa20ee10d76a5c06292871a6bda2d4baa6808dc24b44d2050bdb472d56cd36b7

See more details on using hashes here.

File details

Details for the file acmg_points-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: acmg_points-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.5

File hashes

Hashes for acmg_points-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b158775e706f0d8e3f7d9b6603026da448c438a08b5dcb2f43f26bae20d6575a
MD5 3cf5dd98d2a5d043d8ec90ef7cda7367
BLAKE2b-256 572f6430c9d038288b1eb00ce136e7bb3f44f57a1b3f0837813d2d67c5809da2

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.2

2 files

0.1.1

2 files

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page