BINMAN
bridging ligands & neosubstrates
Selection state Nothing pinned yet. GLUE E3 TGT

About BINMAN

generated 2026-10-04T15:57:42+00:00 by pipeline/build_about.py

Every value on this page is read from a build artefact. Nothing here is typed by hand, and a value that could not be read says 'not recorded' rather than showing a plausible guess.

1 value(s) could not be read from an artefact and are shown as "not recorded" rather than guessed:
  • licence for reference 'ubibrowser2'

Workflow

BINMAN pipeline schematic Described in the text below the figure. Inputs SourcesRCSB, AFDB,UniProt Ground truth11 of 13resolved 1 · Acquisitionhttpx, tenacity 52,821 entries tier 1 902 tier 2 34,539 tier 3 17,380 2 · Geometrygemmi, FreeSASA 52,586 entries analysed 239,485 bridges found 235 failed 3 · Scan and triageDSSP, fpocket 21,717 degrons scanned 650 ligases triaged 1,650 lysines scored 582 failed 4 · Modelmlx-lm, LoRA BINMAN-LM 3B, 32 layers query, triage, abstain never emits a number Modules Glue Atlas Degron Scan E3 Triage Degradability
Described in words

The pipeline runs left to right in four stages. Two kinds of input enter on the left: the primary data sources (RCSB, AlphaFold DB, UniProt, InterPro), and separately the validation datasets that serve as ground truth, of which 11 of 13 resolved. Stage 1, acquisition, catalogued 52,821 entries into priority tiers using httpx and tenacity. Stage 2, geometry, analysed 52,586 entries with gemmi and FreeSASA and found 239,485 bridges, with 235 entries failing. Stage 3, scan and triage, used DSSP and fpocket to produce 21,717 degron candidates, 650 triaged ligases and 1,650 scored lysines. Stage 4 trains BINMAN-LM with mlx-lm, which does text work only and never emits a number. Four modules leave on the right: Glue Atlas, Degron Scan, E3 Triage and Degradability.

Stage counts, read from the manifests

StageTotalSucceeded FailedFailure reasons
bridges 52,821 52,586 235 too_complex × 235
build_about 1 1 0
build_atlas 1 1 0
catalogue 52,821 52,821 0
catalogue_stage 1 1 0
degrons 20,431 19,861 570 RuntimeError × 418 afdb_model_unavailable × 152
edges 1 1 0
external_queries 1 1 0
ligases 650 638 12 pocket × 12
lm_corpus 1 1 0
lm_eval 9 9 0
lm_task_b 1 1 0
lm_train 1 1 0
lysines 12 12 0
references 1 1 0
task_b_abstracts 1 1 0
trimmed_structures 3,839 3,839 0
validate 1 1 0
validation_acquire 13 11 2 all_routes_exhausted × 2

Ground truth

Every module is judged against independently curated published datasets. 11 of 13 resolved. Where a dataset could not be obtained the metric that depends on it is reported as not computed: no hand-written control was ever substituted for a missing published one.

What is missing, and how to get it

degronopedia · https://degronopedia.com/
No static data path or API responded. The site offers per-protein lookup and a degron motif table at https://degronopedia.com/degronopedia/degron_motifs. Export from there, or request the bulk set from the Pokrzywa lab.

protcid_interfaces · https://dunbrack2.fccc.edu/ProtCiD/
The download page moved; https://dunbrack2.fccc.edu/ProtCiD/ links to a PDBfam download under /ProtCiD/PDBfam/Download.aspx. Fetch the Pfam domain interface cluster table from there by hand.

Worked example

One record carried end to end through all four modules, so a first-time visitor understands what BINMAN does without pinning anything. The record is chosen deterministically from 400 candidates, never hardcoded.

Which criteria this example meets

relaxed present in at least two of the three curated glue databases
met passes the bridging filter
met bridging balance above the strong threshold
met its substrate carries a degron found by the Phase 2 scan
met its ligase has a pocket score
relaxed its target has a mapped lysine with a favourable verdict
met the highest-resolution structure among the candidates

4 criterion(a) were relaxed, in the documented order, because no record satisfied all of them. A worked example that quietly stops being true is worse than none, so the relaxation is shown rather than hidden.

Step 1 · found in the atlas

9SAI · A1JM3

Ternary PROTAC-mediated complex consisting of Cereblon, DDB1 and BRD4-BD1, non-covalently linked by JQ1-AcN

LigandN-[(2S)-1-[[(3S)-2,5-bis(oxidanylidene)pyrrolidin-3-yl]amino]-1-oxidanylidene-propan-2-yl]-9-[2-[(9S)-7-(4-chlorophenyl)-4,5,13-trimethyl-3-thia-1,8,11,12-tetrazatricyclo[8.3.0.0^{2,6}]trideca-2(6),4,7,10,12-pentaen-9-yl]ethanoylamino]nonanamide
MethodELECTRON MICROSCOPY
Resolution2.66 Å
ΔSASA chain B/A794.4 Ų
ΔSASA chain C/C798.8 Ų
Bridging balance0.994
Buried fraction0.864
Heavy-atom contacts87 / 28
Ligand heavy atoms50

This passes the bridging filter because it buries more than the minimum area against both chains at once and makes enough heavy-atom contacts to each. A PEG oligomer in the same entry fails on two counts: it is classified as a cryoprotectant from its structure, and it grazes one chain rather than bridging two.

nothing pinned
Loading the ternary complex.
Step 2 · does its substrate carry a degron?

The substrate carries a hairpin degron found by the Phase 2 scan.

Accessions in this entry: O60885 Q16531 Q96SW2

nothing pinned
The AlphaFold model loads here once the Degron Scan has run.
Step 3 · its ligase in context
The E3 Triage stage has not run, so there is no pocket score, volume or triage rank for this record yet.
Step 4 · is the target degradable?
The reach window is not fitted (not yet fitted), so no verdict is shown. The spec 1.0 starting values carry no empirical standing and are deliberately not used to produce a number.

Try it yourself: load this record into the live selection

This record was chosen because every stage that has run worked on it. A reader should look at the misses list and the novel-bridge set in FINDINGS.md for the cases where stages did not.

BINMAN-LM model card

Identity

base modelmlx-community/Qwen2.5-32B-Instruct-4bit
quantisation4-bit
adapter rank8
adapter layers32
fine tune typelora
fusedFalse
build date2026-10-04

Results

What it ran on

chipApple M2 Ultra
gpu cores60
performance cores16
memory gb128.0
mlx version0.32.3
Limits, stated here rather than in a footnote.
  • The model never computes, estimates or reports a numeric value. Every number in BINMAN is computed deterministically in Python and passed to the interface.
  • The vocabulary is closed: the model can only name fields, operators, ligases and classes that exist in the built atlas.
  • The underlying databases have a training cutoff. A glue deposited after the pinned release of each curated database is not in them.
  • Register mismatch: the synthetic test set shares a generator with the training set, so the externally authored query set is the number that matters and the gap between them is reported.

Availability

endpoint not configured for this deployment The app is fully functional without the model.

References

Every database, dataset, model and piece of software the build touched. 52 rows: 39 Crossref verified, 13 unverified and kept rather than dropped, 1 with a licence that could not be determined. References are resolved by Crossref search and checked against the expected title, because an earlier revision's hand-written DOIs included several that resolved to the wrong paper.

How to cite BINMAN

Deller, M. C. BINMAN: Blind-spot INventory of Molecular Adhesives and Neosubstrates.
https://github.com/bellcheddar/BINMAN

Cite BINMAN for the atlas itself, and cite every underlying resource separately: the atlas is a derivative of the databases listed in the reference table, and they deserve their own citation.

Open gates

Gate G7

2 validation dataset(s) could not be obtained automatically: degronopedia, protcid_interfaces.

Each publishes through a JavaScript front end with no documented bulk-export endpoint, or sits behind registration. Spec 4.1b forbids substituting a hand-written control, so the metrics that depend on these are reported as not computed.

See data/validation/MANIFEST.md for the homepage and citation of each, and the exact outcome of every route tried.

## What unblocks it

```bash
# download each file by hand from its homepage, then:
#   mv <file> data/validation/raw/<dataset_name>
pixi run python pipeline/acquire_validation.py --refresh
```

## Already done

11 dataset(s) resolved and parsed: biolip2_annotations, biolip2_artefacts, digly_sites, mgdb_glues, mgtbind_compounds, mgtbind_ternary, molgluedb_glues, protacdb_protacs, sievers_zf_screen, ubibrowser_literature_e3, ubibrowser_predicted_e3