$npx -y skills add adaptyvbio/protein-design-skills --skill protein-qcQuality control metrics and filtering thresholds for protein design. Use this skill when: (1) Evaluating design quality for binding, expression, or structure, (2) Setting filtering thresholds for pLDDT, ipTM, PAE, (3) Checking sequence liabilities (cysteines, deamidation, polybas
| 1 | # Protein Design Quality Control |
| 2 | |
| 3 | ## Critical Limitation |
| 4 | |
| 5 | **Individual metrics have weak predictive power for binding**. Research shows: |
| 6 | - Individual metric ROC AUC: 0.64-0.66 (slightly better than random) |
| 7 | - Metrics are **pre-screening filters**, not affinity predictors |
| 8 | - **Composite scoring is essential** for meaningful ranking |
| 9 | |
| 10 | These thresholds filter out poor designs but do NOT predict binding affinity. |
| 11 | |
| 12 | ## QC Organization |
| 13 | |
| 14 | QC is organized by **purpose** and **level**: |
| 15 | |
| 16 | | Purpose | What it assesses | Key metrics | |
| 17 | |---------|------------------|-------------| |
| 18 | | **Binding** | Interface quality, binding geometry | ipTM, PAE, SC, dG, dSASA | |
| 19 | | **Expression** | Manufacturability, solubility | Instability, GRAVY, pI, cysteines | |
| 20 | | **Structural** | Fold confidence, consistency | pLDDT, pTM, scRMSD | |
| 21 | |
| 22 | Each category has two levels: |
| 23 | - **Metric-level**: Calculated values with thresholds (pLDDT > 0.85) |
| 24 | - **Design-level**: Pattern/motif detection (odd cysteines, NG sites) |
| 25 | |
| 26 | --- |
| 27 | |
| 28 | ## Quick Reference: All Thresholds |
| 29 | |
| 30 | | Category | Metric | Standard | Stringent | Source | |
| 31 | |----------|--------|----------|-----------|--------| |
| 32 | | **Structural** | pLDDT | > 0.85 | > 0.90 | AF2/Chai/Boltz | |
| 33 | | | pTM | > 0.70 | > 0.80 | AF2/Chai/Boltz | |
| 34 | | | scRMSD | < 2.0 Å | < 1.5 Å | Design vs pred | |
| 35 | | **Binding** | ipSAE_min | > 0.61 | > 0.70 | AF3/Boltz (see ipsae) | |
| 36 | | | ipTM | > 0.50 | > 0.60 | AF2/Chai/Boltz | |
| 37 | | | PAE_interaction | < 12 Å | < 10 Å | AF2/Chai/Boltz | |
| 38 | | | Shape Comp (SC) | > 0.50 | > 0.62 | PyRosetta | |
| 39 | | | interface_dG | < -10 | < -15 | PyRosetta | |
| 40 | | | Interface BUNS | <= 4 | <= 2 | PyRosetta | |
| 41 | | **Expression** | Instability | < 40 | < 30 | BioPython | |
| 42 | | | GRAVY | < 0.4 | < 0.2 | BioPython | |
| 43 | | | ESM2 PLL | > 0.0 | > 0.2 | ESM2 | |
| 44 | | | Folding ΔG | < -2 kcal/mol | < -4 kcal/mol | SaProtΔG | |
| 45 | |
| 46 | ### Design-Level Checks (Expression) |
| 47 | | Pattern | Risk | Action | |
| 48 | |---------|------|--------| |
| 49 | | Odd cysteine count | Unpaired disulfides | Redesign | |
| 50 | | NG/NS/NT motifs | Deamidation | Flag/avoid | |
| 51 | | K/R >= 3 consecutive | Proteolysis | Flag | |
| 52 | | >= 6 hydrophobic run | Aggregation | Redesign | |
| 53 | |
| 54 | See: references/binding-qc.md, references/expression-qc.md, references/structural-qc.md |
| 55 | |
| 56 | --- |
| 57 | |
| 58 | ## Interface metrics (PyRosetta) |
| 59 | |
| 60 | Beyond shape complementarity and interface_dG, two interface metrics catch common |
| 61 | de novo failure modes: |
| 62 | |
| 63 | - **Buried unsatisfied H-bonds (BUNS)**: buried polar atoms making no hydrogen bond. |
| 64 | This is a dominant energetic failure mode and is orthogonal to dG and dSASA. Keep |
| 65 | interface BUNS at or below 4 (standard) or 2 (stringent). |
| 66 | - **ContactMolecularSurface**: shape-complementarity-weighted contact area that, unlike |
| 67 | dSASA, is not fooled by gappy or holey interfaces. Higher is better. |
| 68 | |
| 69 | Both are in the Cao 2022, AlphaProteo, and BindCraft filter sets. |
| 70 | |
| 71 | For structure-quality ranking, biomodals also provides `modal_af2rank.py` (AF2Rank), |
| 72 | which scores how well a design re-predicts from its own structure as a template. |
| 73 | |
| 74 | ## Binder ranking (benchmark-backed) |
| 75 | |
| 76 | A meta-analysis of 3,766 experimentally tested binders across 15 targets (Overath et |
| 77 | al., bioRxiv 2025, doi:10.1101/2025.08.14.670059) found that AF3 `ipSAE_min` is the |
| 78 | single best in-silico predictor of binding, and that a simple linear model of three |
| 79 | features generalizes best across targets. Complexity did not help: gradient-boosted |
| 80 | and many-feature models did not beat the linear one. |
| 81 | |
| 82 | Recommended filtering strategies from that work: |
| 83 | |
| 84 | 1. Threshold on one of: `AF3 ipSAE_min > 0.61`, or `ipSAE_min × interface_ΔG/ΔSASA < |
| 85 | -1.5`, or `LIS × shape_complementarity > 0.42`. |
| 86 | 2. Pre-filter on `shape_complementarity > 0.62` and `RMSD_binder < 3.73` (input vs |
| 87 | re-predicted), then take the top-K by `ipSAE_min`. |
| 88 | |
| 89 | `ipSAE_min` is the minimum of the two asymmetric ipSAE directions (binder→target and |
| 90 | target→binder), not the average or max. Use the `ipsae` skill to compute it. Note the |
| 91 | RMSD_binder filter can be over-restrictive on some targets, so prefer it as a soft |
| 92 | pre-filter rather than a hard cutoff. |
| 93 | |
| 94 | ## Stability prediction (small domains) |
| 95 | |
| 96 | For small domains (roughly 60 to 80 residues, the minibinder range), absolute folding |
| 97 | stability can be predicted directly. SaProtΔG (Cho et al., bioRxiv 2026, |
| 98 | doi:10.64898/2026.05.19.726285) predicts absolute fold |