CACTUS Cheminformatics Agent Guide
SkillAI & modelsPNNL cheminformatics LLM agent for molecular analysis
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; ahel provides instructions and does not run this skill.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
Then ask your AI: use the CACTUS Cheminformatics Agent Guide skill
What this skill tells your AI
The instructions your AI receives, as published by brycewang-stanford/auto-empirical-research-skills in skills/43-wentorai-research-plugins/skills/domains/chemistry/cactus-cheminformatics-guide/SKILL.md and read by ahel’s review.
Overview
CACTUS is a cheminformatics LLM agent developed at Pacific Northwest National Laboratory (PNNL) that provides AI-assisted molecular analysis, property prediction, and chemical reasoning. It wraps RDKit, molecular databases, and ML models behind a conversational interface, enabling researchers to query molecular properties, perform similarity searches, and run cheminformatics workflows using natural language.
Usage
from cactus import ChemAgent
agent = ChemAgent(llm_provider="anthropic")
# Natural language chemistry queries
result = agent.ask(
"What is the molecular weight and LogP of aspirin? "
"Is it drug-like by Lipinski's rules?"
)
print(result.answer)
# Aspirin (CC(=O)Oc1ccccc1C(=O)O):
# MW: 180.16, LogP: 1.24
# Lipinski: PASS (MW<500, LogP<5, HBD=1≤5, HBA=4≤10)
# Molecular property calculation
props = agent.calculate_properties(
smiles="CC(=O)Oc1ccccc1C(=O)O",
properties=["mw", "logp", "tpsa", "hbd", "hba", "rotatable"],
)
print(props)
Similarity Search
# Find similar molecules
similar = agent.similarity_search(
query_smiles="CC(=O)Oc1ccccc1C(=O)O", # Aspirin
database="chembl",
threshold=0.7, # Tanimoto similarity
max_results=10,
)
for mol in similar:
print(f"{mol.name}: {mol.smiles} "
f"(similarity: {mol.tanimoto:.3f})")
Substructure Analysis
# Substructure search
matches = agent.substructure_search(
pattern="c1ccccc1C(=O)O", # Benzoic acid motif
database="drugbank",
max_results=20,
)
# Functional group identification
groups = agent.identify_functional_groups(
smiles="CC(=O)Oc1ccccc1C(=O)O"
)
# ["ester", "carboxylic_acid", "aromatic_ring"]
Use Cases
- Molecular analysis: Property calculation via natural language
- Drug screening: Lipinski/Veber rule checking
- Similarity search: Find analogs in chemical databases
- Structure analysis: Substructure and functional group ID
- Chemical education: Interactive chemistry exploration
References
Signals
- GitHub stars
- 4k
- Forks
- 531
- Last commit
- Sep 2026
Advanced
- Item type
- skill
- Key
cactus-cheminformatics-guide- Source
- github.com/brycewang-stanford/auto-empirical-research-skills
github.com/brycewang-stanford/auto-empirical-research-skills
Related picks
Skill · wshobson
The pick for Pythonpython-pro
Skill · jeffallan
The pick for Pythonskill-creator
Skill · anthropics
More in AI & modelswayfinder
Skill · mattpocock
More in AI & modelswizard
Skill · mattpocock
More in AI & modelsalgorithmic-art
Skill · anthropics
More in AI & models