| name | boltz |
| description | Cofold protein-ligand, protein-protein, and nucleic-acid complexes with Boltz-2, and predict binding affinity with its trained affinity head. Use this skill to build Boltz input YAML, run structure prediction with MSAs, pocket constraints, templates, and modified residues, screen compound libraries by cofolding, and interpret confidence scores (pLDDT, pTM, ipTM, PDE) and affinity output (binder probability and log10 IC50). Also trigger on Boltz, Boltz-1, Boltz-2, cofolding, boltz predict, affinity_pred_value, affinity_probability_binary, ipTM, or open-weights AlphaFold3 alternatives. |
| license | MIT |
| allowed-tools | Read Write Edit Bash |
| compatibility | The bundled scripts need only Python 3.10+ and the standard library. Running a prediction needs boltz 2.2+ (pip install boltz, Python >=3.10 and <3.13) and an NVIDIA GPU; 24 GB is a practical minimum for a typical protein-ligand complex, CPU works but is 50-100x slower. Weights download to ~/.boltz on first run. --use_msa_server sends sequences to the public ColabFold server. |
| metadata | {"version":"1.0","skill-author":"K-Dense Inc.","openclaw":{"emoji":"⚡","homepage":"https://github.com/jwohlwend/boltz"},"hermes":{"category":"research"}} |
Boltz-2
An open-weights cofolding model in the AlphaFold3 family, plus something AlphaFold3 does not
have: a trained binding-affinity head. Give it a protein sequence and a ligand SMILES and it
returns a complex structure, per-interface confidence, and a predicted potency — with weights
licensed for commercial use.
Repo: github.com/jwohlwend/boltz
Checked against: boltz 2.2.1 (PyPI), Python ≥3.10 <3.13.
Read references/yaml-schema.md before writing an input,
references/confidence-and-affinity.md before believing an
output, and references/running.md for install, GPU sizing, flags, and
errors.
When to reach for this
| Situation | Use |
|---|
| No experimental structure, and you need a ligand in the pocket | Boltz — folding and docking in one step |
| Experimental structure exists, defined site, need to rank thousands | autodock-vina |
| Experimental structure exists, need a pose without a box | diffdock |
| Need a defensible free energy for a congeneric series | Alchemical FEP, not this |
| No GPU | tamarind runs Boltz as a service |
The loop
python skills/boltz/scripts/make_boltz_yaml.py \
--protein-fasta target.fasta \
--ligand-smiles "Cc1ccc(cc1Nc1nccc(n1)c1cccnc1)NC(=O)c1ccc(CN2CCN(C)CC2)cc1" \
--affinity --out complex.yaml
boltz predict complex.yaml --out_dir predictions/ --use_msa_server \
--use_potentials --diffusion_samples 5
python skills/boltz/scripts/collect_results.py predictions/
name sample confidence_score iptm ligand_iptm binder_probability pIC50 IC50_uM dG_kcal_mol
lig1 0 0.84 0.82 0.79 0.93 8.10 0.0079 -11.05
lig2 0 0.51 0.42 0.31 0.21 4.60 25.1189 -6.27
make_boltz_yaml.py catches at write time the four things that otherwise fail after the GPU has
already spun up: non-amino-acid characters in a sequence, an affinity binder that is not a ligand
chain, with no ligand, and an out-of-range . It also quotes SMILES —
an unquoted (an alkyne) starts a YAML comment and silently truncates the molecule.