catalyst-pharma

Guides autonomous multi-agent optimization of molecular property prediction models using CrewAI.

Updated Mar 13, 2026
One-click install
npx skills add https://github.com/matt-grain/pharma-catalyst --skill catalyst-pharma-matt-grain
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: catalyst-pharma
Source: https://github.com/matt-grain/pharma-catalyst/tree/main/.claude/skills/catalyst-pharma
Command: npx skills add https://github.com/matt-grain/pharma-catalyst --skill catalyst-pharma-matt-grain

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Working on the pharma-agents project requires understanding a complex autonomous ML optimization loop where CrewAI agents propose, implement, and evaluate changes to molecular property prediction models. This Skill provides the architectural knowledge, file conventions, and debugging patterns needed to run experiments, interpret results, and fix agent failures without reverse-engineering the codebase. ## Core Features & Use Cases - Experiment Architecture Guidance: Explains the experiments/ directory layout (bbbp classification, solubility regression), baseline.json metric configuration, and direction-aware score comparison via is_better() and compute_improvement_pct(). - Git Worktree Workflow: Documents how each run creates an isolated worktree under .worktrees/<experiment>/run_XXX/ with branch naming run/<experiment>/<number>, and how to promote or discard runs. - Debugging Support: Covers common failures such as FileReadTool errors, metric hardcoding mistakes, and per-experiment run numbering issues. - Use Case: You want to run 10 optimization iterations on the BBB penetration experiment and promote the best result as the new baseline; this Skill tells you the exact commands, environment variables (PHARMA_EXPERIMENT, MAX_ITERATIONS), and verification steps. ## Quick Start Ask the assistant to explain how to start an optimization run for the bbbp experiment and how to promote a successful run as the new baseline.

Frequently Asked Questions about catalyst-pharma

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run a molecular ML optimization experiment with CrewAI agents?▼

Set the PHARMA_EXPERIMENT environment variable to the experiment name (e.g., bbbp or solubility) and MAX_ITERATIONS to the desired iteration count, then start the run. Each iteration creates an isolated git worktree where agents modify train.py, evaluate results, and keep or revert changes.

How do I compare metrics when lower scores are better in ML experiments?▼

Use the is_better() and compute_improvement_pct() helpers from pharma_agents.memory instead of raw comparisons. They read the direction field in baseline.json, which supports both higher_is_better for ROC_AUC and lower_is_better for RMSE.

What is the directory structure for pharma-agents experiments?▼

Each experiment lives under experiments/<name>/ and contains baseline.json (score, metric, direction config), baseline_train.py (immutable reference), train.py (the working copy agents modify), and memory.json (accumulated learnings across runs).

Why does FileReadTool fail during an agent run?▼

FileReadTool errors usually mean train.py does not exist in the run's isolated worktree under .worktrees/<experiment>/run_XXX/. Verify the worktree was created correctly and that the experiment directory contains a valid train.py before the run starts.

How do I promote or discard an experiment run in git worktrees?▼

Use /promote <run> -e <experiment> to make a successful run the new baseline, or /discard <run> -e <experiment> to remove a failed or stuck run. Run branches follow the naming pattern run/<experiment>/<number>, listable via git branch -a.