AgentStack
SKILL verified MIT-0 Self-run

Molecular Docking

skill-awslabs-hcls-agent-skills-molecular-docking · by awslabs

Molecular docking pipeline using AutoDock Vina for structure-based drug discovery. Triggers on docking, AutoDock Vina, receptor preparation, ligand preparation, PDBQT, grid box, virtual screening, binding affinity, pose prediction, structure-based virtual screening, "redocking RMSD", "Vina score", "docking pose", "prepare receptor", "ligand library screening".

No reviews yet
0 installs
4 views
0.0% view→install

Install

$ agentstack add skill-awslabs-hcls-agent-skills-molecular-docking

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Molecular Docking? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Molecular Docking — Pipeline Skill (Thin Scaffold)

Overview

Adds decision logic for receptor/ligand preparation tool selection, grid box sizing, exhaustiveness tuning, and validation protocol. Focuses on gotchas that produce silently wrong poses.

Usage

  • Activate when choosing preparation tools (obabel vs ADFR/meeko) for a docking campaign
  • Activate when defining grid box dimensions or placement
  • Activate when validating docking setup via redocking

Core Concepts

Decision Logic

Receptor preparation tool:
├── Quick exploration / single ligand → obabel (-d, reduce, -xr)
└── Production virtual screen → prepare_receptor (ADFR) or meeko
    └── Handles altlocs, metals, non-standard residues correctly

Ligand preparation:
├── Single ligand from SMILES/SDF → obabel --gen3d -h
├── Large library (>100 ligands) → meeko (mk_prepare_ligand.py)
└── Stereocenters undefined? → Enumerate explicitly BEFORE docking

Grid box placement:
├── Co-crystal ligand available → Center on ligand centroid
└── No co-crystal → Use pocket predictor (fpocket, P2Rank, SiteMap)

Grid box sizing:
└── Ligand longest diameter + 10–15 Å padding per axis
    └── Typical: 20–30 Å per side for drug-like molecules

Exhaustiveness:
├── Quick exploration → 8 (Vina default)
├── Production / ranking → 32
└── Large/flexible ligands (>8 rotatable bonds) → 64+

Validation gate (MUST pass before trusting screen results): Redock co-crystal ligand → RMSD 8 rotatable bonds | | num_modes | 10 | Increase for ensemble analysis | | energy_range | 3 kcal/mol | Widen to capture diverse poses | | Box padding | +10–15 Å | Larger for allosteric sites | | Protonation pH | 7.0 (reduce default) | Use PROPKA/H++ for acidic pockets (e.g., aspartyl proteases pH 4.5) |

Score interpretation:

  • Vina scores are only comparable within the SAME receptor + grid setup
  • Typical drug-like hits: -7 to -12 kcal/mol
  • Scores are NOT transferable across different targets or grid configurations

Common Mistakes

  • Wrong: Leaving crystallographic waters in the receptor

Right: Strip HOH/WAT residues before PDBQT conversion (unless explicit-water docking) Why: Waters block the binding site and produce unphysical poses

  • Wrong: Using default pH 7 protonation for all binding sites

Right: Use PROPKA or H++ for acidic/basic pockets Why: Wrong protonation alters H-bond networks and produces incorrect poses

  • Wrong: Grid box barely enclosing the binding site

Right: Ligand diameter + 10–15 Å padding per axis Why: Under-padding clips the site and biases poses toward box center

  • Wrong: Default exhaustiveness = 8 for large/flexible ligands

Right: Use 32+ for production; 64+ for >8 rotatable bonds Why: Low exhaustiveness misses global minima, unreliable rankings

  • Wrong: Skipping redocking validation before screening

Right: Redock co-crystal ligand, verify RMSD < 2 Å Why: RMSD ≥ 2 Å means preparation or grid is wrong; screen results untrustworthy

  • Wrong: Using obabel -xr PDBQT for production virtual screens

Right: Use prepare_receptor (ADFR) or meeko for production Why: obabel may miss altlocs, metals, or non-standard residues

  • Wrong: Running obabel --gen3d on SMILES with undefined stereocenters

Right: Provide isomeric SMILES or enumerate stereoisomers explicitly Why: Undefined stereocenters resolved arbitrarily — may dock wrong enantiomer

  • Wrong: Comparing Vina affinities across different receptors or grid configs

Right: Only compare within same receptor + grid; re-rank when changing either Why: Scores are context-dependent, not transferable

Response Format

  • Lead with the command or code the user needs — explain after
  • Structure as: confirm inputs → working code → key parameters explained → gotchas
  • One complete working example per task; do not show every alternative
  • Keep code comments minimal and functional (what, not why-it-exists)
  • Target: 50-100 lines of code with brief surrounding explanation

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.