Project

CReM-agent

Agent-driven molecular optimization combining CReM transformations with molecular docking in a logged, restartable workflow.

not open-source project yet

Scientific problem

Iterative molecular optimization requires repeated choices about where and how to modify a molecule, while exhaustive scoring is computationally expensive and unconstrained optimization can lead to chemically unrealistic or synthetically unfeasible candidates.

Motivation

CReM-agent explores whether a language-model agent can guide these choices while deterministic tools retain control of molecular generation, docking, validation, and run state, and CReM constrains transformations toward chemically reasonable and more synthetically feasible structures.

My role

  • Proposed the concept and led development of the framework.
  • Designed the interface between the agent, CReM transformations, molecular validation, and docking.
  • Integrated and deployed local/open-source LLMs as agent backends.
  • Implemented Bubblewrap-based isolation to restrict agent access to the execution environment and deterministic tooling.
  • Developed run-state, provenance, restart, and docking-budget logic for reproducible optimization.

Methodology

  • The agent proposes hypothesis, molecular sites, transformations, and search steps from the available molecular and docking information.
  • CReM performs chemically constrained fragment transformations; deterministic code validates candidates and prevents duplicate evaluations.
  • Docking provides the structure-based objective, while run state and agent actions are stored for inspection and restart.
  • Supports hosted and local LLMs.

Results

  • Working framework under active development and evaluation.
  • Manuscript in preparation.

Software

  • Python
  • RDKit
  • CReM
  • EasyDock
  • AutoDock Vina
  • hosted (Claude code/Codex) and local LLMs

Back to projects