agentsclimarketplace

Alphafold2

Skill xuzhougeng/wisp-science/skills/alphafold2

Open-source, local-first desktop AI research workbench for scientific computing with Python/R, MCP bioinformatics tools, SSH/WSL/GPU runtimes, and OpenAI/Anthropic models.

Install
npx -y skills add xuzhougeng/wisp-science --skill alphafold2

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

Predict protein structure for monomers and multimers with AlphaFold2 via the ColabFold runner (Mirdita et al. 2022, github.com/sokrypton/ColabFold; AlphaFold2 Jumper et al. 2021). Reach for this skill to fold a sequence or complex with the AF2/AF2-Multimer evoformer, to validate designed sequences by self-consistency pLDDT, ipTM, and RMSD, or to run a quick MSA-backed prediction using the public MMseqs2 server.

The file declares its own license as Apache-2.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

5.5 KB, as published. Nobody here has run it

AlphaFold2 (ColabFold runner)

This skill wraps AlphaFold2 and AlphaFold2-Multimer through colabfold_batch, which replaces DeepMind's local-database MSA pipeline with a call to the public MMseqs2 server — so a prediction is one command and one FASTA, not a 2 TB database mount. AF2 remains the reference monomer predictor and the multimer model is still a strong protein–protein validator, but it does not handle ligands or nucleic acids; for those, route to boltz, chai1, or openfold3. The ColabFold code is MIT (github.com/sokrypton/ColabFold) and the AlphaFold2 code is Apache-2.0 (github.com/google-deepmind/alphafold); the AF2 model parameters are CC-BY-4.0 with DeepMind's terms of use.

Running it

colabfold_batch input.fasta out \
  --num-recycle 3 \
  --model-type alphafold2_multimer_v3

The input is a plain FASTA. For a complex, put every chain on one sequence line separated by :colabfold_batch builds a paired MSA per segment and runs the multimer model when it sees the colon (so the explicit --model-type alphafold2_multimer_v3 above is belt-and-braces). For monomers omit --model-type and the colon. --templates and --amber add PDB templates and OpenMM relaxation respectively; both are off by default and both add minutes per model.

ColabFold runs all five AF2 model weights by default and ranks them by pLDDT (pTM/ipTM for multimer), so output per query lands in out/ as five ranked PDBs <name>_unrelaxed_rank_00{1..5}_*.pdb (b-factor column carries pLDDT) and a matching <name>_scores_rank_00{N}_*.json with plddt, ptm, and — for multimer — iptm and the pae matrix. Rank-1 is the model to read first; ipTM > 0.5 is the usual soft pass for an interface.

Unified-memory defaults loop forever under gVisor — the env patches them out

colabfold/batch.py hard-sets TF_FORCE_UNIFIED_MEMORY=1 and XLA_PYTHON_CLIENT_MEM_FRACTION=4.0 on import. Under a gVisor sandbox unified memory is unsupported, so JAX's device_put loops indefinitely allocating host RAM during AF2 parameter load — the job appears hung, never errors. Override both before the import (TF_FORCE_UNIFIED_MEMORY=0, fraction 0.95), or sed-patch the two assignments out of batch.py in the image build, or the first fold never starts.

The MSA server is the wall-clock bottleneck, and it is shared

colabfold_batch defaults to --msa-mode mmseqs2_uniref_env, which posts your sequence to api.colabfold.com. That server is a public, rate-limited resource: the wait dominates short folds and occasionally times out under load. For campaigns, run the MSA stage once with --msa-only, keep the resulting .a3m files, and feed the directory back as the input on subsequent runs — the GPU stage then starts immediately and the server is not hit again.

Wisp execution

Use python only for bounded interactive checks. For a long or GPU-backed workload, require a selected and probed ssh:<alias> context and load remote-compute-ssh. Put the documented invocation in a self-contained project script, activate the remote environment explicitly, stage only small files with input_paths, and make the command write to a known absolute remote result path. Submit it with run_in_context and register that exact ssh:// path in output_specs. Call monitor_run once when waiting is needed, get_run once for a snapshot, or cancel_run to stop. Do not send a scheduler submission through the SSH-direct runner.

Errors worth recognizing

You seeIt means / do this
Job hangs silently during "Running model_1" with host RAM climbingUnified-memory loop under gVisor — see the gotcha above; override or patch batch.py.
RESOURCE_EXHAUSTED / OOM during XLA compileXLA_PYTHON_CLIENT_MEM_FRACTION too high for the GPU — drop below the 0.95 default to 0.9 or so.
MSA stage hangs at Submitting jobPublic MMseqs2 server is rate-limiting — wait, or pre-compute with --msa-only and re-run from the cached .a3m.

Next: for designed-sequence validation, superpose the rank-1 model onto the design backbone with US-align and gate on pLDDT/ipTM thresholds; for ligand-bearing complexes, hand the same chains to boltz or chai1.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.