← Files NVIDIA BioNeMo Agent ToolkitARCHIVED FILE
skills/complexa-binder-design/vendor/science-skills/VENDOR.md
2.6 KB · Oct 5, 2026 · 18:30 UTC
# Vendored: google-deepmind/science-skills (Stage-1 target + hotspot tooling) Two DeepMind skills are vendored to make pipeline **Stage 1** executable in this repo: resolve a target structure from AFDB and read UniProt features for hotspots. | | | |---|---| | **Source** | https://github.com/google-deepmind/science-skills | | **Retrieved** | 2026-06-11 (raw from `main`) | | **License** | Apache-2.0 (see `LICENSE` in this directory) | | **Skills** | `alphafold_database_fetch_and_analyze/`, `uniprot_database/` | ## What each provides - `alphafold_database_fetch_and_analyze/scripts/fetch_structure.py` — UniProt ID → AFDB model (mmCIF, pLDDT in B-factor) + PAE JSON + metadata, via the AFDB prediction API (`/api/prediction/<acc>`, which resolves the current model version — the legacy `…model_v4.cif` path is stale; models are now v6). - `alphafold_database_fetch_and_analyze/scripts/analyze_plddt.py`, `analyze_pae.py` — confidence / domain-boundary analysis. **Unmodified**; pure stdlib (`dependencies = []`), run with `python3` directly. - `uniprot_database/scripts/uniprot_tools.py` — `get`/`search`/`map`/`count`/ `sparql`/`stream` over UniProtKB; `get <ACC>` returns the full entry incl. `features` (Active site / Binding site / Site / Mutagenesis / …) used to seed hotspots. ## Modifications (Apache-2.0 §4: changes are stated in-file) The upstream scripts depend on an internal `scienceskillscommon.http_client` package installed via `uv` inline-script metadata. To run standalone here with **no `uv` and no extra packages**, in `fetch_structure.py` and `uniprot_tools.py`: - the `# /// script … ///` `uv` block and the `from science_skills…scienceskillscommon import http_client` import were removed; - a small **stdlib-`urllib` shim** was added (same `HttpClient.fetch` / `fetch_json` / `fetch_bytes` / `stream_lines`, `HttpResponse`, `HttpError` interface), aliased as `http_client` so the rest of each file is unchanged. All AFDB / UniProt query logic is otherwise upstream-verbatim. Each modified file carries a `# MODIFIED for bionemo-nim-skills` note. `analyze_*.py` and the `SKILL.md` files are verbatim. Re-vendor from upstream to update. ## Verified (2026-06-11) - `fetch_structure.py P04637 -o …` and `P00533 -o …` → downloaded v6 cif + PAE. - `uniprot_tools.py get P00533` → 321 features; hotspot candidates Asp837 (Active site) + ATP-pocket Binding sites. - AFDB numbering == UniProt numbering (AFDB res 837 = ASP837), so UniProt feature positions map onto the AFDB model directly; verify identity in the cif. Experimental PDBs (RCSB) still need SIFTS/alignment remapping.
SHA-256: 65a425f454842126af198fcc37a1b0acc3be13c26caf21f34a37f7486b98cce4