Install
$ agentstack add skill-awslabs-hcls-agent-skills-molecular-docking ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo 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.
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 = 8for 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 -xrPDBQT 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 --gen3don 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.
- Author: awslabs
- Source: awslabs/hcls-agent-skills
- License: MIT-0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.