Docking molecules into protein binding sites scored by a pluggable MLIP energy function (Meta's UMA by default, MACE-OMOL-0 and AIMNet2 also supported). Automatically preps the binding site from any PDB, then combines desolvation and ligand-strain corrections into an electronic binding energy — runnable from an AI agent.
A conversational CLI agent (powered by Ollama) that turns a plain-English request like "dock dopamine into SULT1A3" into a full docking run — PDB lookup, blind binding-site detection, and AutoDock Vina docking — with no prior knowledge of the binding site required.
An agentic system for building and training chemistry ML models (QSAR / bioactivity / property prediction). An Ollama-driven chat model chains together real, reusable tools — ChEMBL data prep, featurization, RF/LightGBM/MPNN/Chemprop training, evaluation — to satisfy a plain-language modeling request.
A full-featured command-line version of the MOdular DRug design AGent, with rich terminal output. Combines molecular and protein tools, IC50 prediction, AutoDock Vina docking, and a fine-tunable SMILES-GPT generator, with an easy node-integration system for adding new tools.
Local, no-network ADMET prediction from SMILES using two independent Chemprop v2 MPNN model families — ADMET-AI (52 endpoints + DrugBank percentiles) and Admetica (22 per-endpoint models with applicability-domain scores) — each shipped as both a batch CLI and an LLM-callable tool.
A conversational molecular-similarity agent (powered by Ollama): ask "how similar is ibuprofen to naproxen?" or "cluster these molecules by 3D shape" and it picks the right tool — Fraggle 2D scaffold distance, ODDT 3D shape (USR / USRCAT / ElectroShape), or pharmacophore-feature comparison — in reference-vs-list or all-vs-all matrix mode.
Binding-site shape and electrostatic similarity in the spirit of OpenEye's SiteHopper, with no license required. Extracts a capped, AMBER-charged pocket from any PDB, maps its enclosed cavity as a charge-colored point cloud, and scores shape and charge-color Tanimotos at the best superposition — useful for off-target and polypharmacology risk.
Finds shape-bioisosteric substituent swaps for a lead molecule using RDKit fragmentation and ODDT shape descriptors. Queries a shipped 100K drug-like fragment library in seconds, grafts the best matches back onto the lead's core to build real analogues, and optionally docks them with AutoDock Vina to compare against the lead.
Protein structure prediction and protein/ligand cofolding with no local GPU required. OpenFold3, RosettaFold3, and ESMFold run on Modal GPUs on demand, while ESM2 embeddings run locally on CPU.
An OpenMM molecular-dynamics pipeline for solvated protein/ligand complexes and single small molecules, built on the AMBER force-field family. Prep, build, run, and analyze are separate omd subcommands so intermediates stay inspectable.
- UMADock — MLIP-scored blind docking
- dock_assist — conversational AI-assisted blind docking
- MoDrAg — modular drug-design AI agent
- MoDrAg_CLI — command-line MoDrAg
- admet_assist — local ADMET prediction
- fold — protein structure prediction and cofolding
- MD_openmm — OpenMM molecular dynamics pipeline
- Boltz — scripts for running Boltz on the API
- boltz_local — Boltz-2 protein/ligand cofolding and affinity on Apple silicon (MPS)
- cafprot — pH-aware protonation for ligands (SMILES) and receptors (PDB)
- FAO_MOLPROP_CLI — adversarial molecule optimization from the CLI
- MolecularPropertyOptimization — agentic molecular property optimization
- sim_assist — molecular similarity measures
- pocket_assist — binding-pocket shape and electrostatic similarity (open-source SiteHopper-style)
- bioisostere_assist — shape-bioisosteric fragment swapping to generate lead analogues
- GenMask — hit expansion via token unmasking
- SMILES_GPT — GPT for SMILES generation
- SMILES_VAE — variational SMILES autoencoder
- CheMLAgent — agent for cleaning CSVs, featurizing molecules, training ML models
- admet_assist — Chemprop MPNN ADMET models
- MACE_UseAndTrain — use/fine-tune MACE for small molecules
- Simple_Molecular_Graph_models — MPNN and classical ML models for molecular graphs
- smiles_embed — SMILES embedding model training
- SMILES_GPT — GPT for SMILES generation
- SMILES_VAE — variational SMILES autoencoder
- serve_azo_model — serves a trained MLP for azo dye lambda max
- InflectionLM — visualizing LLM output inflection points
- GenMask — hit expansion via token unmasking
- FAO_MOLPROP_CLI — adversarial molecule optimization
- MolecularPropertyOptimization — agentic molecular property optimization
- Gaussian16-Scripts-and-Functions — bash functions and scripts for Gaussian 16
- Many-body-input-files — Gaussian input files for 2- and 3-body interaction energies
- NBO_CorrelatedGaussians — non-Born-Oppenheimer explicitly correlated spherical floating gaussians
- ExplicitlyCorrelatedGaussians_StochasticGrowth — stochastic optimization of explicitly correlated gaussian wavefunctions
- MACE_UseAndTrain — use/fine-tune MACE from GFN2 data
- CafChem — libraries/modules for the CafChem computational chemistry / drug design tools
- CafChemTeach — notebooks for the Python, Machine Learning, and AI for Chemistry module
- CafChemQuantum — quantum computing practice and teaching code in Q#, Qiskit, and Cirq
- Java_teaching_examples — linear regression with a Java GUI

