Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 42 additions & 0 deletions references/software-registry.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -322,6 +322,48 @@ software:
citation_notes: "Record repo commit, model weights, and inputs."
status: planned
notes: "Verify current repo/license before packaging."
opendde:
role: biomolecular_complex_prediction
image_family: ai-design
install_method: source_or_public_docker
upstream_repo: "https://github.com/aurekaresearch/OpenDDE"
upstream_commit_sha_observed_2026_07_05: "a72e9f655231660f8af0072dbdb8b2a54f3fbd3c"
docker_image: "aurekaresearch/opendde:v1"
docker_tag_digest_observed_2026_07_05: "sha256:a9404f76df1cd965a80447ee30c9c440af48b199581d9bd44ee157c18109a9d6"
upstream_model_repo: "https://huggingface.co/aurekaresearch/OpenDDE"
upstream_model_repo_commit_observed_2026_07_05: "eddd563ce96571f784012edd8f045181c8f8627d"
released_checkpoints: "opendde.pt, opendde_abag.pt"
checkpoint_sizes_observed_2026_07_05: "opendde.pt ~2.5GB; opendde_abag.pt ~2.5GB"
common_runtime_size_observed_2026_07_05: "~0.65GB before search databases"
license_class: open_source_apache_2_reported_by_repo
license_gate: verify_current_terms_and_weight_posture
runpod_fit: strong_after_no_search_canary
gpu_class: "RTX 4090/L40S for canaries; 4x GPU for Fold-CP distributed route"
smoke_command: "opendde doctor && opendde --help"
runtime_artifacts: "opendde_predictions/, opendde_manifest.json, summary_confidence.json, full_data.json when --need_atom_confidence true"
citation_notes: "Record repo commit, Docker digest or source install route, Hugging Face model commit, checkpoint hashes, input JSON, MSA/template posture, and confidence sidecars."
weights_cache_default: "$OPENDDE_ROOT_DIR/checkpoint"
weights_cache_env_var: "OPENDDE_ROOT_DIR"
weights_source: "Hugging Face aurekaresearch/OpenDDE; opendde.pt default, opendde_abag.pt selected with --load_checkpoint_path."
status: planned
notes: |
AlphaFold-3-style all-atom prediction/cofold lane for proteins, DNA,
RNA, ligands, ions, explicit covalent bonds, and antibody-antigen
canaries. Use as an orthogonal validator next to Boltz, Chai-1,
AF2-Multimer, and ESMFold2, not as a generator.

Start with a no-search public protein canary:
--use_msa false --use_template false --use_rna_msa false. Promote to
MSA/template/RNA-MSA only after database, HMMER/Kalign, and public/private
sequence posture are declared. Do not send private sequences to the public
ColabFold-compatible MMseqs2 service.

The reviewed source path loads PyTorch and pickle-based runtime artifacts,
including the model checkpoint and RDKit CCD cache. Execution-ready
provider packets must pin URL, remote ETag/Xet hash where available, local
SHA-256, and byte size before loading. For ipSAE-style rescoring, run with
--need_atom_confidence true and preserve the full_data JSON; summary-only
output is scalar confidence, not a complete interface sidecar bundle.
alphafold3:
role: biomolecular_prediction
image_family: ai-design
Expand Down
8 changes: 5 additions & 3 deletions tools/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ The wider tool knowledge base lives in [`references/software-registry.yaml`](../
- [Cofold scoring stack](cofold-scoring-stack.md). Multi-validator slate plus ipSAE rescore. Reads from the individual cards below.
- [Boltz](boltz.md). Open biomolecular cofold with confidence and full PAE outputs.
- [Chai-1](chai.md). Open biomolecular cofold with MSA-driven prediction.
- [OpenDDE](opendde.md). Open all-atom biomolecular cofold/prediction lane with ABAG checkpoint and optional PAE/PDE sidecars.
- [ESMFold2](esmfold2.md). Biohub structure prediction and foldability review lane, with Hugging Face weights as the first cloud canary route and Biohub API as optional/deferred.
- [ESMFold2 binder control notes](esmfold2-binder-controls.md). Sequence, structure, interface, logit, and optimization controls for constraining ESMFold2/Biohub binder-design runs against a deposited target site.
- [BioEmu](bioemu.md). Sequence-conditioned monomer ensemble sampling for flexibility-risk review.
Expand Down Expand Up @@ -82,7 +83,7 @@ A short routing guide. Pick the designer arm by target and binder length, then a
| A protein that changes shape on ligand binding (allostery, AND gate, biosensor) | [SwitchCraft](switchcraft.md) | [Cofold scoring stack](cofold-scoring-stack.md) for the orthogonal switch check |
| Add a function or effector to a validated binder (fusion construct) | [DOMINO](domino.md) | [Cofold scoring stack](cofold-scoring-stack.md) to prove both modules fold |
| Triage or mature antibody variant libraries (sequence-only) | [CoSiNE](cosine.md) | [Cofold scoring stack](cofold-scoring-stack.md) for an orthogonal structural check |
| Cofold one designed candidate against a target | [Boltz](boltz.md) or [Chai-1](chai.md) alone | [Cofold scoring stack](cofold-scoring-stack.md) for multi-validator gating |
| Cofold one designed candidate against a target | [Boltz](boltz.md), [Chai-1](chai.md), or [OpenDDE](opendde.md) alone | [Cofold scoring stack](cofold-scoring-stack.md) for multi-validator gating |
| Check foldability or uncertainty for a public sequence/candidate | [ESMFold2](esmfold2.md) | [Cofold scoring stack](cofold-scoring-stack.md) when interface or binder claims are requested |
| Check monomer conformational spread | [BioEmu](bioemu.md) | [MolViewSpec](molviewspec.md) for report scenes, [Cofold scoring stack](cofold-scoring-stack.md) when interface claims are requested |
| Prioritize a large ligand library | [MolPAL](molpal.md) | Score provider lane, [PoseBusters](posebusters.md), screening consensus ranking |
Expand All @@ -99,14 +100,15 @@ target prep
-> designer (RFdiffusion3 | RFpeptides | HelixDiff | PepGLAD | EvoBind | Genie3)
-> sequence design (ProteinMPNN or SolubleMPNN)
-> foldability/uncertainty review (ESMFold2 where useful)
-> cofold slate (Boltz + Chai-1 + AF2-Multimer)
-> cofold slate (Boltz + Chai-1 + AF2-Multimer + optional OpenDDE)
-> ipSAE rescore on PAE matrices
-> consensus gate
-> refinement
-> rendered report
```

The cofold scoring stack card explains how to compose Boltz, Chai-1, and AF2-Multimer into the validator slate.
The cofold scoring stack card explains how to compose Boltz, Chai-1,
AF2-Multimer, and optional OpenDDE into the validator slate.

## Important Context

Expand Down
34 changes: 33 additions & 1 deletion tools/cofold-scoring-stack.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Public scaffold: yes. Runtime execution: review required for current package ter
## Hand A Mission To An Agent

```text
Use the BioSymphony Structure Factory skill with the Cofold Scoring Stack tool card. For target <PDB:ID> and candidate set <path>, prepare a multi-validator cofold lane that runs Boltz, Chai-1, and AF2-Multimer in parallel, then rescores with ipSAE for a min-ipSAE consensus gate. Specify recycle and sample counts per validator and the closeout artifact list.
Use the BioSymphony Structure Factory skill with the Cofold Scoring Stack tool card. For target <PDB:ID> and candidate set <path>, prepare a multi-validator cofold lane that runs Boltz, Chai-1, AF2-Multimer, and optional OpenDDE in parallel, then rescores with ipSAE for a min-ipSAE consensus gate. Specify recycle and sample counts per validator and the closeout artifact list.
```

## Headline Finding (2026): Multi-Validator min-ipSAE Consensus
Expand All @@ -26,13 +26,15 @@ This card is the meta-lane. Individual cofold validators have their own cards:

- [Boltz](boltz.md) for fast cofold with full PAE output.
- [Chai-1](chai.md) for MSA-driven cofold with parquet inputs.
- [OpenDDE](opendde.md) for all-atom biomolecular cofolds, ABAG canaries, and optional PAE/PDE sidecars.
- AF2-Multimer (via LocalColabFold) as the long-established baseline validator.

A common slate:

1. **AF2-Multimer v3** via LocalColabFold (`alphafold2_multimer_v3` with `--templates` on for target classes with dense PDB coverage).
2. **Boltz-2** with optional template injection (`templates: [{cif:<ref>.cif, force:true}]` in YAML).
3. **Chai-1** with proper MSA + template (`use_esm_embeddings=False`, `msa_directory=<target_aligned.pqt>`).
4. **OpenDDE** for selected canaries or ranked candidates, especially antibody-antigen complexes where the ABAG checkpoint is relevant.

Each validator emits a PAE matrix → ipSAE post-hoc rescore.

Expand Down Expand Up @@ -129,6 +131,27 @@ colabfold_batch \

5-model mean+stddev is your free orthogonal confidence proxy.

### OpenDDE

```bash
LAYERNORM_TYPE=torch opendde pred \
-i inputs/design_001.opendde.json \
-o opendde_out/design_001 \
-n opendde_v1 \
--use_msa false \
--use_template false \
--use_rna_msa false \
--sample 3 \
--step 200 \
--cycle 10 \
--need_atom_confidence true
```

Use `--load_checkpoint_path "$OPENDDE_ROOT_DIR/checkpoint/opendde_abag.pt"` for
the ABAG checkpoint. Preserve both summary confidence JSON and `full_data` JSON
when the output will feed an ipSAE-style or PAE/PDE sidecar gate. Summary-only
output is useful for triage but incomplete for interface-error rescoring.

### ABCFold (one-call multi-validator)

```bash
Expand Down Expand Up @@ -174,6 +197,9 @@ python /workspace/ipsae/ipsae.py \
| AF2M | `--num-recycle` | 3 | 3 | Bump to 5 for borderline calls |
| AF2M | `--rank` | plddt | **`multimer`** | iPTM-weighted ranking |
| AF2M | `--templates` | off | **on** when target has PDB coverage | Templates pin register where cofolders hallucinate |
| OpenDDE | `--need_atom_confidence` | false | **true** for ranked candidates | Saves PAE/PDE/contact sidecars. |
| OpenDDE | `--use_msa`, `--use_template`, `--use_rna_msa` | true/false by flag | **false for first canary** | Avoids public-service and large-database dependencies. |
| OpenDDE | `--load_checkpoint_path` | default `opendde.pt` | use `opendde_abag.pt` for ABAG canaries | Selects antibody-antigen checkpoint. |
| ipSAE | `pae_cutoff` (Å) | 10 | 10 | Dunbrack default |
| ipSAE | `dist_cutoff` (Å) | 5 | 5 | Dunbrack default |
| ABCFold | `-abc` | — | **-abc** | Three cofolders, one call |
Expand All @@ -193,6 +219,8 @@ python /workspace/ipsae/ipsae.py \
| Chai-1 | NPZ | `per_chain_pair_iptm[binder, target]` | interface iPTM (not global `iptm`) |
| AF2M | `<job>_summary_confidences.json` | `iptm`, `ranking_confidence`, `ptm` | top-rank model |
| AF2M | `<job>_scores_rank_<k>.json` | `ptm`, `iptm`, `predicted_aligned_error` | per-model, for the 5-model spread |
| OpenDDE | `<job>_summary_confidence_sample_<k>.json` | `chain_pair_iptm`, `iptm`, `ptm`, `gpde`, `ranking_score` | scalar and chain-pair confidence diagnostics |
| OpenDDE | `<job>_full_data_sample_<k>.json` | `token_pair_pae`, `token_pair_pde`, `contact_probs` | sidecars for downstream interface-error scoring |
| ipSAE | stdout / CSV | `ipSAE_d0chn`, `ipSAE_max`, mean interface PAE | post-hoc |

## Consensus Gate
Expand Down Expand Up @@ -243,6 +271,9 @@ A candidate that passes the first row but fails site or state checks should clos
- **Boltz `--num_workers > 1` crashes on shared community hosts** with a CUDA `_cuda_init` driver-too-old race even when single-worker mode works. Force `--num_workers 1`.
- **LocalColabFold's pixi installer is the current supported install path** (2026-01 pivot); the older `install_colabbatch_linux.sh` still works on Ubuntu 22.04.
- **AF2-Multimer fetches its own MSAs** (per-job, ColabFold MMseqs2). Even if you have cached a Boltz / Chai `.a3m`, AF2M does not reuse it — rate-limit risk reappears on >20 jobs.
- **OpenDDE package install currently needs source or Docker** as of the 2026-07-05 review; the advertised PyPI package route was not visible. Pin the source commit or Docker digest in provider packets.
- **OpenDDE summary-only output is not enough for ipSAE-style gates.** Use `--need_atom_confidence true` and preserve `full_data`, then budget for larger artifacts.
- **OpenDDE uses public MMseqs2 by default for protein MSA search.** Use precomputed A3M or a self-hosted `MMSEQS_SERVICE_HOST_URL` for private sequences or batch fanout.
- **For peptide ligands with disordered or partly-cleaved N-termini** (common in GPCR-peptide complexes), expect interface ipSAE to be lower due to peptide flexibility. Not a bad model — a real biological feature. Calibrate the threshold against a known positive-control complex.

## Citations And References
Expand All @@ -257,6 +288,7 @@ A candidate that passes the first row but fails site or state checks should clos
- Overath / Rygaard binder-presence floor: bioRxiv 2025.08.14.670059v2
- DigBioLab reference pipeline (defines the consensus gate): https://github.com/DigBioLab/de_novo_binder_scoring
- BindEnergyCraft / pTMEnergy (free upgrade on pAE logits): arXiv 2505.21241
- OpenDDE: https://github.com/aurekaresearch/OpenDDE

## Currency Check (Run Before Reusing This Card)

Expand Down
Loading
Loading