Thirty-six kits are bundled, not one universal optimizer
The repository contains 36 separate kits for structure prediction, cofolding, binder design, sequence design, and genomic models. Each directory carries a pinned upstream release, its own optimization package, environment definitions, GPU settings, change notes, and stock documentation. The shared vocabulary makes them look uniform, but choosing AF2IG does not install Boltz-2, Chai-1, ColabFold, or the other 35 kits.
That design is sensible for reproducibility. An optimization tied to one model version, framework build, and GPU kernel should not pretend to be generic. It also makes adoption selective. Pick the one upstream tool you already trust, read its STOCK.md and CHANGES.md, then reproduce stock output before enabling an optimized mode. Cloning the whole 787.4 MB tree is the easy part.
Four modes separate fidelity from memory pressure
The common mode names are off, exact, fast, and big, though each kit ships only a subset. Off runs the pinned stock path. Exact is intended to preserve its output while running faster. Fast permits documented numeric movement, and big prioritizes fitting larger inputs in GPU memory. Every kit is supposed to print an ACTIVE line naming the engaged mode or refuse with exit code 3.
Those contracts are more useful than a vague speed claim because they tell a scientist what may change. They still require local verification. Input shapes affect compilation and memory. Framework and driver pins matter. A statement that numeric differences fit normal seed variation does not prove your downstream ranking, structure, or design decision remains unchanged. Keep representative fixtures and compare the biological outputs you use, not only process exit codes.
What happened when we ran it
Our measurement setup targeted af2ig/opt/ at commit f4f62fa in an unprivileged Debian container with 3 CPUs, 8 GB of RAM, Python 3.12, and no secrets. Installation finished in 27 seconds with 36 packages and 37 MB on disk. The Python package build then completed successfully in 4 seconds. Pip-audit found 0 known vulnerabilities.
No test script or target was available to the lab, so 0 tests ran. The repository scan found 8,055 files, about 1,358,065 source lines, no CI workflow, no root Dockerfile, and no designated tests directory. Individual kit folders do contain their own artifacts and container recipes, but our result cannot be stretched into validation of all 36 optimization paths.
Most importantly, the sandbox did not have the model stack or supported GPU. It did not fetch parameters, compile CUDA or XLA kernels, compare stock with exact output, measure speed, or check peak memory. The 4-second build proves that one lightweight Python package can be assembled. It says nothing about the performance claim that gives the collection its purpose.
AF2IG needs its full pinned environment after the package builds
AF2IG targets AlphaFold2 initial-guess scoring for designed binder and target complexes. Its kit expects Python 3.11, a pinned JAX and CUDA stack, model parameters, Linux x86-64, and a supported NVIDIA card. Docker, Apptainer, and a host virtual environment are documented as separate routes. Each route still runs the kit's install and pin checks before inference.
The af2ig_opt package itself declares no runtime dependencies because it checks the model stack when activated. That explains why our 36-package lab environment stayed small relative to the real workload. A successful wheel build can coexist with a missing JAX stack, absent weights, or unsupported GPU. Run the kit's dry check on the target host and treat any pin mismatch as a stop, not an invitation to loosen versions blindly.
Startup hooks and model files expand the trust boundary
Many kits install a Python startup hook that runs whenever an interpreter starts in that environment. Other paths use sitecustomize, patch upstream modules in memory, or overwrite a fixed set of upstream files after making backups. The README also warns that model files loaded through pickle can execute code. These mechanisms are common in performance work, but they make an isolated environment mandatory.
The documentation includes digest checks for weights, binaries, caches, generated kernels, and upstream archives. It also states that containers run as root by default and advises normal isolation. Open issue 5 reports that a find_spec probe can disarm autoloading in several kits, allowing a later import to run stock silently. Issue 6 describes a separate silent stock fallback in Evo 2. Both remain open and directly challenge the stated activation contract.
An October push does not reverse the no-maintenance notice
GitHub recorded a push on October 2, 2026, and listed 7 open issues and pull requests on October 5. One recent item is an automated dependency update. The top-level README is explicit that Anthropic does not plan further updates, does not accept pull requests, and may leave issues unanswered. There is no GitHub release. The repository should therefore be judged as a dated reference snapshot.
For the right lab, that snapshot can be valuable: it shows concrete optimizations, pinning discipline, and hardware-specific implementation work across many important models. Ownership transfers to you the moment you adopt it. Our packaging result is enough to inspect AF2IG's Python layer, not enough to recommend its inference path. Fork the chosen kit, reproduce stock and optimized outputs, and budget for maintaining every pinned layer yourself.

