Skip to main content
This guide takes you from an empty folder to a working, tested agent. You’ll install Maestro, then use the Rasa Copilot, a set of MCP tools that plug into your IDE, to build, evaluate, and refine your first skill in a tight loop.

The build loop

Agent development works in a loop. Rasa provides you with a harness that allows you to accelerate that loop and if you’re ready for it - run it on autopilot.

1. Install Maestro

Maestro ships in the rasa-pro package. Install it into a fresh virtual environment on Python 3.10 to 3.13:
Check it worked:
Maestro is currently pre-release, so pin the exact version rather than letting pip resolve the latest stable one.
You will also need a Rasa license key and an API key for your LLM provider. The setup wizard in the next step asks for both.

2. Create a project

Run rasa init to start the setup wizard:
The wizard walks you through the full setup:
  1. Asks where to create your project
  2. Collects your keys and writes them to a .env
  3. Installs Cursor and Claude Code compatible skills
  4. Validates and trains your agent
  5. Opens the Inspector so you can chat with it immediately
Once it completes, your project looks like this:
That is what the scaffold writes. A project can hold more: a project-root memory.yml for cross-skill state, responses.yml for verbatim wording, references/ for knowledge, and tools/ for tools shared between skills. See Project structure for the full layout and which files are required.

3. Set your environment variables

The wizard collects your keys and writes a .env. To change them later, edit it directly:
.env
To use a different LLM provider, edit the llm: block in integrations.yml.

4. Connect your coding agent

If you created your project with rasa init, Claude Code and Cursor compatible skills are already installed. Open the project in either tool and your coding agent has the context it needs to build and iterate on Maestro skills. For an existing project that wasn’t created with rasa init, install them manually:

5. Build your first skill from a prompt

With the Copilot connected, describe the skill in plain language, or paste in real transcripts of the conversations you want it to handle:
1

Describe it or paste transcripts

In your IDE chat, tell the Copilot what you want:
Or paste a handful of real support transcripts and ask the Copilot to turn them into a skill.
2

Let the Copilot scaffold the agent

The Copilot writes the skill.md, any tools/, and wires up config. Review the diff before accepting.
skills/check_balance/skill.md
rasa train is the validation gate. Before packaging, it checks the whole project for undeclared memory writes, unknown response names, and malformed conditions. Treat its errors as authoring feedback and fix them before debugging conversation behaviour.

6. Evaluate with simulations

Rather than scripting every turn, let an LLM simulate a real user and score whether the agent met its goals. Ask the Copilot to generate and run a scenario:
The Copilot writes a scenario, validates it, runs the simulation against your running agent, and returns a pass/fail summary with a link to the full transcript. When something fails, it reads the result and recommends concrete fixes: a missing constraint, an ambiguous instruction, a tool that should be gated.

7. Test and inspect

Start your agent and open a browser window where you can talk to it directly:
Try the conversation yourself and step through each turn in the Inspector to see which skill was active, what memory was set, and which tools ran.

8. Loop

Feed what you learn back into the prompt: tighten the instructions, add a tool constraint, or add scoped instructions. Re-run the simulations, inspect again, and repeat until the agent behaves the way you need.

What’s next

Skills

Understand the building block you just created.

Instructions

Write the prose that drives your skill.

Tools

Give your skill actions it can take.

Progressive Control

Add guarantees where mistakes are expensive.