本文へ移動
cccskills
無料GitHub で公開

binding-site-analysis

Decide whether a protein has a pocket worth targeting, and where it is, before committing to a docking or design campaign. Use this skill to run fpocket cavity detection, rank cavities by druggability and volume, compare apo and holo conformations to spot induced fit, identify allosteric and cryptic cavities that only open in simulation, and convert a chosen cavity into the search box coordinates a docking run needs. Also trigger on fpocket, cavity detection, druggability score, alpha sphere, cryptic pocket, allosteric site, pocket volume, hotspot mapping, or undruggable target assessment.

インストール方法を見る

含まれるファイル(7)

  • SKILL.md7.6 KB
  • references/cryptic-and-allosteric.md6.0 KB
  • references/druggability.md5.1 KB
  • references/fpocket-output.md5.1 KB
  • scripts/pocket_box.py9.3 KB
  • scripts/pocket_report.py10.5 KB
  • scripts/site_compare.py8.8 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Binding Site Analysis

The step before docking. Every docking skill in this bundle assumes you already know where the ligand goes and that the site is worth the compute — this is where those two assumptions get checked. fpocket runs in seconds and can save a month of screening against a pocket that was never going to bind anything.

Tool: fpocket, MIT, conda install -c conda-forge fpocket. Alpha-sphere cavity detection by Voronoi tessellation. Checked against: fpocket 4.x output format.

Read references/fpocket-output.md before parsing a run, references/druggability.md before calling a site druggable or not, and references/cryptic-and-allosteric.md when the answer is "no pocket" — that one is judgement, not syntax.

The three scripts

ScriptAnswers
pocket_report.pyWhich cavities are there, and is any of them worth targeting?
pocket_box.pyWhere exactly does the docking box go?
site_compare.pyDoes a pocket appear only when something is bound?

Score and Druggability Score are different, and pocket1 is not the answer

This is the thing to get right. fpocket reports two numbers per cavity and they measure different things. Score ranks cavities geometrically, and pocket numbering follows it. Druggability Score is a logistic model trained to separate sites with known drug-like ligands from sites without — it is the one that answers "worth a campaign".

They disagree often:

python skills/binding-site-analysis/scripts/pocket_report.py rank --out-dir receptor_out
# fpocket ranks pocket 1 first by Score, but pocket 2 is the most druggable.
pocket  druggability  score  volume  apolar_fraction  verdict     reason
2       0.871         0.31   720.5   0.7143           druggable   resembles sites with known drug-like ligands
1       0.183         0.412  980.4   0.3172           poor        does not resemble a small-molecule binding site

Pocket 1 is larger and scores higher. It is also 68% polar surface, which is a groove rather than a pocket. Volume alone is misleading — the apolar fraction is what distinguishes a site that will bind a small molecule, and this script derives it because fpocket does not.

Thresholds applied: druggability ≥ 0.5 is druggable, 0.2–0.5 marginal; volume < 200 ų is too small whatever the score; apolar fraction < 0.35 flags a polar groove. The 0.5 cut is fpocket's own; the others are this skill's conventions, stated so you can argue with them.

Strip the structure first

fpocket contours around whatever is in the file. Waters and ligands left in place get reported as protein surface, and the cavity they occupy disappears:

grep -v HOH input.pdb | grep -v HETATM > receptor.pdb && fpocket -f receptor.pdb

A structural metal or covalent prosthetic group should stay; a substrate analogue should go.

Producing the box

python skills/binding-site-analysis/scripts/pocket_box.py from-pocket --out-dir receptor_out \
    --pocket 2 --format vina
center_x = 12.0
center_y = 22.0
center_z = 33.0
size_x = 12.0
size_y = 12.0
size_z = 14.0

That output pastes directly into an AutoDock Vina config. Two sizing rules are built in: 4 Šof padding per side, so the ligand can translate and rotate rather than being pinned; and a warning past 27 000 ų, because Vina spreads a fixed exhaustiveness over the whole volume and a box twice as wide samples eight times as thinly.

from-ligand centres on a crystallographic ligand instead, and that is the better option whenever a holo structure exists — a real bound pose beats a predicted cavity. It lists the candidate HETATM residues when the one you named is not present.

Cryptic sites, or why the apo structure lied

python skills/binding-site-analysis/scripts/site_compare.py match --apo apo_out --holo holo_out

Classifies each cavity as cryptic (in holo, absent in apo), induced fit, stable, closes on binding, or apo only. Superpose the structures first — matching is spatial, and unaligned inputs make every cavity look cryptic. The script says so when nothing matches.

This is not a corner case. The KRAS G12C switch II pocket does not exist in unliganded KRAS; thirty years of "undruggable" rested on structures that could not show it.

Four ways this misleads

  1. A low druggability score means "unlike sites we have drugged before", not "impossible". The training set predates degraders, covalent inhibitors, and most protein–protein interface drugs.
  2. You scored one conformation. Apo structures under-report pockets systematically.
  3. Structure quality propagates. Missing loops, uncertain rotamers above ~2.5 Å, and AlphaFold's tendency toward closed apo-like states all change the answer. Check with uniprot-rcsb first.
  4. A detector that cannot recover a known site should not be trusted on an unknown one. If a holo structure exists, verify the top cavity contains the crystallographic ligand.

When the answer is "no druggable pocket"

That is a conclusion about conventional reversible small molecules, not about the target. In rough order of how often they work: covalent inhibition (how KRAS G12C fell), targeted degradation (degraders — a degrader needs a binding site, not an inhibitory pocket), molecular glues, cryptic sites found by mixed-solvent MD, biologics if the target is extracellular, and oligonucleotides to sidestep the protein entirely.

Composing with the rest of the bundle

  • uniprot-rcsb → before: check resolution, missing residues, and whether a holo structure exists.
  • This skill → autodock-vina: pocket_box.py --format vina writes its config directly.
  • This skill → diffdock / boltz: which site to focus on before posing.
  • molecular-dynamics → alongside: mixed-solvent simulation to find cryptic pockets.
  • chemical-space → after: only worth a giga-scale library once the site is worth it.

Reporting results honestly

Give the druggability score, the volume, and the apolar fraction together — one number is not an assessment. Say which structure and which conformation was analysed, and whether waters and ligands were stripped. If a known ligand exists, say whether the detector recovered its site. Call a predicted cryptic pocket a hypothesis until a fragment soak or thermal shift confirms it.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

adaptyv

無料

How to use the Adaptyv Bio Foundry API and Python SDK for protein experiment design, submission, and results retrieval. Use this skill whenever the user mentions Adaptyv, Foundry API, protein binding assays, protein screening experiments, BLI/SPR assays, thermostability assays, or wants to submit protein sequences for experimental characterization. Also trigger when code imports `adaptyv`, `adaptyv_sdk`, or `FoundryClient`, or references `foundry-api-public.adaptyvbio.com`.

日本語の概要は準備中です。原文の説明を表示しています。

K-Dense-AI/drug-discovery-agent-skills362026年10月12日 更新

Turn a set of structures into absorption, distribution, metabolism, excretion, and toxicity estimates with ADMET-AI, and read them as a developability verdict rather than a table of numbers. Use this skill to run batch prediction over a library, interpret each endpoint against its DrugBank-approved percentile, and flag the liabilities that stop a series — hERG blockade, CYP inhibition, poor Caco-2 permeability, high clearance, and plasma protein binding. Also trigger on ADMET-AI, admet_ai, Chemprop-RDKit, hERG liability, CYP3A4 inhibition, Caco-2, bioavailability prediction, or developability triage.

日本語の概要は準備中です。原文の説明を表示しています。

K-Dense-AI/drug-discovery-agent-skills362026年10月12日 更新

Number antibody variable domains, annotate CDRs, and assess developability from sequence. Use this skill to apply IMGT, Kabat, Chothia, Martin, or AHo numbering with ANARCI, delimit CDRs and framework regions, scan for chemical liabilities (N-glycosylation sequons, deamidation NG, isomerisation DG, oxidation, unpaired cysteine, fragmentation), compute pI, net charge, extinction coefficient and hydrophobicity, and plan humanisation by CDR grafting. Also trigger on antibody, nanobody, VHH, scFv, Fab, CDR, framework, ANARCI, abnumber, IgBLAST, OAS, SAbDab, humanization, Vernier residues, or developability.

日本語の概要は準備中です。原文の説明を表示しています。

K-Dense-AI/drug-discovery-agent-skills362026年10月12日 更新

Structure-based docking with AutoDock Vina, Vinardo, and AutoDock4 through the Meeko toolchain. Use this skill to define a docking box, prepare receptors and ligands as PDBQT, run single or batch docking, rescore, and interpret affinities, poses, and ligand efficiency. Covers box definition from a reference ligand or pocket residues, protonation and tautomer decisions, flexible side chains, exhaustiveness and seeds, redocking validation, and virtual screening over compound libraries. Also trigger on vina, smina, gnina, mk_prepare_ligand, mk_prepare_receptor, mk_export, scrub.py, PDBQT, autogrid4, docking box, or binding-pose prediction.

日本語の概要は準備中です。原文の説明を表示しています。

K-Dense-AI/drug-discovery-agent-skills362026年10月12日 更新

boltz

無料

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.

日本語の概要は準備中です。原文の説明を表示しています。

K-Dense-AI/drug-discovery-agent-skills362026年10月12日 更新

chembl

無料

Query the ChEMBL database web services for measured bioactivity data, compound records and calculated properties, targets, assays, mechanisms of action, drug indications and warnings. Use this skill to build curated SAR or QSAR datasets for a target, look compounds up by SMILES, InChIKey, name, or ChEMBL id, run similarity and substructure searches, and check what chemistry is already known against a protein. Also trigger when a query mentions ChEMBL ids (CHEMBL...), pChEMBL values, IC50/Ki/Kd/EC50 retrieval, assay confidence scores, or ebi.ac.uk/chembl.

日本語の概要は準備中です。原文の説明を表示しています。

K-Dense-AI/drug-discovery-agent-skills362026年10月12日 更新

K-Dense-AI のスキルをすべて見る

このスキルの問題を報告する