Dragging in Steps
On the left side of the editor, you’ll see the steps sidebar:
When you hover the sidebar, it will expand to show you the different categories of steps we have. Let’s click on Text:
Now, let’s say we want to generate some text. We’ll click and hold to drag the Generate Text block onto the canvas.
Great! But it’s not connected yet. When you drag in a step, you’ll need to connect it manually. To connect the step, hover over a step in the canvas and you’ll notice there are circular dots in the corners. Click and hold, then move your mouse to another dot - you’ve now created a connection between the steps, so now they can share variables.
Dragging in steps is great if you know what step you want, but don’t know where to put it just yet.
Inserting Steps
You can also insert steps directly into your Spell. If you know where you want the step to go, inserting a step lets you skip the part where you have to manually connect the steps together.Inserting a step after another step
If you have a step with no other steps after it (”end of the chain”), when you hover that step you’ll see a + button next to the connection circle:
Clicking the + button will open the step sidebar just like before. When you click a step (you can’t drag them), it will be inserted after the step you clicked the + button on.
Inserting a step between two steps
If you want to add a step between two other steps, you definitely don’t want to have to delete the connections on both sides, move the steps around to make space, then drag in the new step and make two more connections. That’s a lot of work. Fortunately, when you hover a connection or the surrounding steps, we’ll show a + button in the middle of that connection:
When you click this button, the step sidebar opens up. When you select a step, it will automatically be inserted between the two steps. We’ll also try to move steps around so the canvas doesn’t get too cluttered.
Understanding Connections
Connections from one block to another are simple enough, but what if your Spell is more complex?Connections are “dependencies”
We’ve been described connections as the way you pass data between steps, but there’s one more concept to understand about connections. When you connect steps A and B like below:
What you’re saying is two things:
- I want A to run before B
- I want B to have access to A’s output variables
Branching (running in parallel)
One step can connect to multiple other steps after it. Take a look at this:
In this Spell, the Generate Text with AI steps are dependent on the Start step. Start will run, and only then will the AI steps run. In fact, we can do better: the AI steps will run at the same time (in parallel). This can make your larger Spells with multiple branches quite a bit faster.
You can also go the other way. Multiple steps can connect to the same step:
In this case, Display is dependent on both AI steps. As a result, Display will run after both of the AI steps have finished. This guarantees that Display will have the variables available from the AI steps.

