Observed since 20 Oct, 18:19 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Points-based ACMG/AMP variant classification (Tavtigian 2020 naturally-scaled system, the basis of SVC v4) side by side with the 2015 combining rules — see where they disagree.
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 PM1
PVS1 VeryStrong +8
PM1 Moderate +2
total +10 → Pathogenic [tavtigian2020]
2015 rules → Likely pathogenic (2015 combining rule met)
⚠️ SCHEMES DISAGREE
Fifteen 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:

| evidence | points | points class | 2015 class | why |
|---|---|---|---|---|
| PVS1 + PM1 (one Moderate) | +10 | Pathogenic | Likely pathogenic | 2015 needs PVS1 + ≥ 2 Moderate for Pathogenic; points reach 10 with one |
| PVS1 + PP3 (one Supporting) | +9 | Likely pathogenic | VUS | 2015 needs ≥ 2 Supporting next to PVS1; points need one |
| PVS1 + PM2_Supporting | +9 | Likely pathogenic | VUS | the same pattern with PM2 at the strength ClinGen SVI recommends since 2020 |
Full table: examples/compare.md.
Conflicting evidence. Richards 2015 puts a variant in Uncertain significance when "the criteria for benign and pathogenic are contradictory". That sentence has two readings, and implementations differ. acmg-points defaults to the stricter one and lets you switch:
--conflict | reading | PS1 + PM1 + BS1 |
|---|---|---|
any (default) | any pathogenic evidence together with any benign evidence → VUS | VUS (points: +2, VUS too) |
both-met | VUS only when a pathogenic rule and a benign rule are both met | Likely pathogenic |
BA1 is stand-alone benign evidence under both readings and is not overridden by supporting pathogenic criteria. The JSON output records which reading was used.
PM2. The 2015 default is Moderate; ClinGen SVI recommended PM2 at Supporting strength in 2020. Apply it as PM2_Supporting — the package does not silently downgrade it, because the strength is your decision.
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.
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
PM2_Supporting is a Supporting criterion), as ClinGen SVI modifiers intend.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.
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.
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.
DOI (all versions): 10.5281/zenodo.22286276 · this version: 10.5281/zenodo.22286277
Soloshenko 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.
pypistats · 38 observations shown. Missing days are unknown. Source category: overall: without mirrors.
| Date / source period | Value | Observed at |
|---|---|---|
| 2026-10-20 – 2026-10-20 | 2 | 2026-10-21T12:35:00.0398131Z |
| 2026-10-19 – 2026-10-19 | 2 | 2026-10-21T12:35:00.0398131Z |
| 2026-10-18 – 2026-10-18 | 2 | 2026-10-21T12:35:00.0398131Z |
| 2026-10-17 – 2026-10-17 | 1 | 2026-10-21T12:35:00.0398131Z |
| 2026-10-16 – 2026-10-16 | 9 | 2026-10-21T12:35:00.0398131Z |
| 2026-10-13 – 2026-10-13 | 2 | 2026-10-21T12:35:00.0398131Z |
| 2026-10-10 – 2026-10-10 | 2 | 2026-10-21T12:35:00.0398131Z |
| 2026-10-09 – 2026-10-09 | 7 | 2026-10-21T12:35:00.0398131Z |
| 2026-10-08 – 2026-10-08 | 6 | 2026-10-21T12:35:00.0398131Z |
| 2026-10-06 – 2026-10-06 | 1 | 2026-10-21T12:35:00.0398131Z |
| 2026-10-05 – 2026-10-05 | 6 | 2026-10-21T12:35:00.0398131Z |
| 2026-10-04 – 2026-10-04 | 1 | 2026-10-21T12:35:00.0398131Z |
| 2026-10-03 – 2026-10-03 | 9 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-30 – 2026-09-30 | 6 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-29 – 2026-09-29 | 3 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-28 – 2026-09-28 | 6 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-27 – 2026-09-27 | 2 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-26 – 2026-09-26 | 2 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-25 – 2026-09-25 | 1 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-24 – 2026-09-24 | 8 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-21 – 2026-09-21 | 1 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-20 – 2026-09-20 | 5 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-19 – 2026-09-19 | 6 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-18 – 2026-09-18 | 6 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-17 – 2026-09-17 | 1 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-16 – 2026-09-16 | 8 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-15 – 2026-09-15 | 2 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-14 – 2026-09-14 | 1 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-12 – 2026-09-12 | 1 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-11 – 2026-09-11 | 4 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-10 – 2026-09-10 | 5 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-09 – 2026-09-09 | 8 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-08 – 2026-09-08 | 6 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-07 – 2026-09-07 | 14 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-06 – 2026-09-06 | 10 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-05 – 2026-09-05 | 21 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-04 – 2026-09-04 | 31 | 2026-10-21T12:35:00.0398131Z |
| 2026-09-03 – 2026-09-03 | 237 | 2026-10-21T12:35:00.0398131Z |
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.1.2 | 3 Sept 2026 | 0 |
This describes our collected data; it is not a security assessment.
Observed since 20 Oct, 18:19 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:296529b0346632e756b9c616342a29a8b6ecb1b2e3cddf079157b7768bb31b61