Skills protein-docking-configurator
Prepare input files for molecular docking software, automatically determine
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/aipoch-ai/protein-docking-configurator" ~/.claude/skills/clawdbot-skills-protein-docking-configurator && rm -rf "$T"
manifest:
skills/aipoch-ai/protein-docking-configurator/SKILL.mdsource content
Protein Docking Configurator
Features
- Parse protein PDB files, identify ligand binding pockets
- Automatically calculate Grid Box center coordinates and dimensions
- Generate AutoDock Vina configuration files
- Generate AutoDock4 Grid parameter files
- Support Box positioning based on active site residues or ligands
Usage
As Command Line Tool
# Calculate Grid Box based on active site residues python scripts/main.py --receptor protein.pdb --active-site-residues "A:120,A:145,A:189" --software vina # Calculate Grid Box based on reference ligand python scripts/main.py --receptor protein.pdb --reference-ligand ligand.pdb --software vina # Manually specify Box parameters python scripts/main.py --receptor protein.pdb --center-x 10.5 --center-y -5.2 --center-z 20.1 --size-x 20 --size-y 20 --size-z 20 --software vina
As Python Module
from scripts.main import DockingConfigurator config = DockingConfigurator() # Calculate box from receptor and active site config.from_active_site("protein.pdb", ["A:120", "A:145", "A:189"]) config.write_vina_config("config.txt", exhaustiveness=32) # Calculate box from receptor and reference ligand config.from_reference_ligand("protein.pdb", "ligand.pdb", padding=5.0) config.write_autodock4_gpf("protein.gpf", spacing=0.375)
Parameter Description
Command Line Parameters
| Parameter | Description | Required |
|---|---|---|
| Receptor protein PDB file path | Yes |
| Docking software type (vina/autodock4) | Yes |
| Active site residue list, format: "chain:residue_number" | No |
| Reference ligand PDB/MOL file | No |
| Grid Box center coordinates | No |
| Grid Box dimensions (Å) | No |
| Grid spacing (AutoDock4 only) | No (default 0.375) |
| Search exhaustiveness (Vina only) | No (default 32) |
| Output file path | No |
Output
- AutoDock Vina: Generates config.txt configuration file
- AutoDock4: Generates .gpf (Grid Parameter File) and corresponding macromolecule files
Dependencies
- Python 3.8+
- numpy
Examples
# Example 1: Using active site residues python scripts/main.py --receptor 1abc_receptor.pdb --active-site-residues "A:45,A:92,A:156" --software vina --output vina_config.txt # Example 2: Using reference ligand with custom Box size python scripts/main.py --receptor kinase.pdb --reference-ligand ATP.pdb --software vina --size-x 25 --size-y 25 --size-z 25 # Example 3: AutoDock4 configuration python scripts/main.py --receptor protein.pdb --active-site-residues "A:100" --software autodock4 --spacing 0.375 --output protein.gpf
Notes
- Input PDB files should have water molecules and heteroatoms removed (unless needed)
- It is recommended to protonate and calculate charges for the receptor (using AutoDock Tools, etc.)
- Grid Box size should be sufficient to cover ligand conformational space, typically 20-30Å
- Active site residues should include catalytic residues and key binding residues
Risk Assessment
| Risk Indicator | Assessment | Level |
|---|---|---|
| Code Execution | Python/R scripts executed locally | Medium |
| Network Access | No external API calls | Low |
| File System Access | Read input files, write output files | Medium |
| Instruction Tampering | Standard prompt guidelines | Low |
| Data Exposure | Output files saved to workspace | Low |
Security Checklist
- No hardcoded credentials or API keys
- No unauthorized file system access (../)
- Output does not expose sensitive information
- Prompt injection protections in place
- Input file paths validated (no ../ traversal)
- Output directory restricted to workspace
- Script execution in sandboxed environment
- Error messages sanitized (no stack traces exposed)
- Dependencies audited
Prerequisites
No additional Python packages required.
Evaluation Criteria
Success Metrics
- Successfully executes main functionality
- Output meets quality standards
- Handles edge cases gracefully
- Performance is acceptable
Test Cases
- Basic Functionality: Standard input → Expected output
- Edge Case: Invalid input → Graceful error handling
- Performance: Large dataset → Acceptable processing time
Lifecycle Status
- Current Stage: Draft
- Next Review Date: 2026-03-06
- Known Issues: None
- Planned Improvements:
- Performance optimization
- Additional feature support