Rosetta Scripts: a very short introduction

Noora Az
2 min readFeb 25, 2024

--

(This guide assumes you already know what Rosetta is.)

What is Rosetta Scripts?

Think of it as a recipe sheet. You write out the ingredients and steps. Then you give it to a chef, and he does the magic! In this case, the recipe is your script file (XML file), and the chef is Rosetta software.

So you make a file, let’s call it magical_script.xml , then in your command line, you say:

Dear Rosetta, Please, take this protein, perform these steps on it, and give me the magic! In bash, it is written as:

<path-to-rosetta>/main/source/bin/rosetta_scripts.<proper-extension> -in:file:s my_protein.pdb -parser:protocol magical_script.xml

How to create my own recipe?

You first create a file, with .xml extension. Then you start with writing this, to tell the rosetta: Hey, look at this part, here is the recipe:

<ROSETTASCRIPTS>
</ROSETTASCRIPTS>

Inside these brackets, goes all the ingredients and instructions. Ingredients can be score functions, task operations, simple metrics, filters, movers, and residue selectors. Instructions go into the protocol section, which tells Rosetta which of those ingredients and by which order should be used. At the end, Rosetta creates a score file, and if you don’t use the default score, you can also tell Rosetta which score to use.

We don’t talk about their details here. But after having them, your code looks like this:

<ROSETTASCRIPTS>

<!-- ingredients -->

<SCOREFXNS>
...
</SCOREFXNS>

<RESIDUE_SELECTORS>
...
</RESIDUE_SELECTORS>

<TASKOPERATIONS>
...
</TASKOPERATIONS>

<SIMPLE_METRICS>
...
</SIMPLE_METRICS>

<FILTERS>
...
</FILTERS>

<MOVERS>
...
</MOVERS>

<!-- instructions -->
<PROTOCOLS>
</PROTOCOLS>

<!-- output score -->
<OUTPUT />

</ROSETTASCRIPTS>

That’s it! Now you know what rosetta scripts is :)

--

--