Skip to main content
The Open-Source Infrastructure Layer for Biology
Proto: Programmable Biology
License: MITbioRxivModalArc Institute blog
Proto is a high-level programming language for biology. Design DNA, RNA, and protein sequences with constraint-based optimization, composing computational and AI models into a single workflow.

Two Components

opengraph.githubassets

Language

A constraint-based optimization framework for designing DNA, RNA, and protein sequences. Declare what you want, compose generators and scorers, and chain optimization stages into pipelines.
opengraph.githubassets

Tools

Computational biology and biological AI tools through a single, consistent Python interface. Structure prediction, inverse folding, language models, sequence analysis, and more.

How It Works

1

Define your design space

Create Segments (contiguous sequence regions) and group them into Constructs. Start from scratch or provide a starting sequence.
2

Choose how to generate proposals

Assign Generators to segments. From simple random mutations to protein language models like ESM2 and ESM3, and inverse-folding models like ProteinMPNN.
3

Set your requirements as constraints

Constraints score how well each proposal meets your requirements. Use any of 120+ bioinformatics tools as scoring functions.
4

Run optimization

Optimizers search sequence space to minimize total constraint scores. Chain multiple optimizers in a Program for multi-stage pipelines.

Citation

If you use Proto in your research, please cite our preprint:
Merchant AT, Guo D, Viggiano B, Brennan-Almaraz LE, Hur E, Mai T, Yin P, King SH, Ashley E, Hie BL. A high-level programming language for generative biology with Proto. bioRxiv (2026). doi: 10.64898/2026.06.22.733870

Get Started

Language: Installation

Set up the optimization framework

Language: Quickstart

Design your first sequence

Tools: Installation

Set up the bioinformatics tools library

Tools: Quickstart

Run your first tool

Acknowledgements

Thank you to Modal for sponsoring the compute used to develop and test the remote execution layer, and for making it straightforward to host the tool catalog. Thank you to Stanford University and the Arc Institute for supporting this work’s development. Thank you to everyone who has contributed to Proto. Contributions of every size are welcome; see the contributing guides for proto-language and proto-tools to get started.