Source code for our paper "---". This adaptation is built on top of Protac-invent (https://github.com/jidushanbojue/Protac-invent), which itself is based on REINVENT, reinvent-scoring, and DockStream.
This adaptation also integrates Roshambo (https://github.com/molecularinformatics/roshambo) to enable shape-based scoring functionality. We thank the original authors of all these projects for sharing their work.
Open-Protac-INVENT is an open-source adaptation of Protac-Invent, designed for PROTAC linker generation using reinforcement learning and docking-based scoring. The original Protac-Invent framework combines generative modeling from REINVENT with scoring functions from reinvent-scoring and docking workflows from DockStream to enable reinforcement learning-driven linker design.
In this adaptation, we replace proprietary shape-similarity components (e.g., ROCS, Omega) with fully open-source alternatives using Roshambo and RDKit for 2D-to-3D conformer generation, shape-based scoring, and energy minimization. These modifications make the workflow more accessible and reproducible, allowing it to be used without commercial licenses.
The repository includes:
- Updated pipelines for open-source shape similarity scoring (Roshambo + RDKit).
- Integration with DockStream for docking and post-docking analysis.
- Configurable JSON templates for custom linker generation tasks.
- Example datasets and results to help users reproduce the workflow.
Figure 1: Initial Integration Diagram (To be updated)
Figure 2: General workflow of Open-Protac-INVENT. Adapted from Protac-invent under Apache 2.0 License.
- Install Conda
- Ensure
git
is installed and available in your PATH.
$ git clone https://github.com/SaiCharithReddy/Open-Protac-INVENT.git
$ cd Open-Protac-INVENT
$ conda env create -f environment.yml
$ conda activate open-protac-invent
$ pip install -e .
- Locate the template JSON file (for example: results/LINK_invent/BTK/template.json).
- Modify the file and folder paths in the template as needed.
- Other parameters can remain unchanged for a standard run.
Execute the following command to start the run using the edited JSON:
$ python input.py template.json
This project is licensed under the Apache License 2.0, except where otherwise noted.
Portions of the code, specifically under src/roshambo/
, are derived from Roshambo and are licensed under the GNU General Public License v3.0 (GPL-3.0).
Modifications were made to integrate Roshambo into this project. Users must comply with both licenses where applicable.
Full license details can be found in the LICENSE file.
For the GPL-3.0 portion, see src/roshambo/LICENSE.
We also acknowledge upstream work: