Clone the companion repository and move into this tutorial’s project:
git clone https://github.com/RasaHQ/rasa-community-resources.git
cd rasa-community-resources/tutorials/rasa-tools-and-memory-tutorial
Credentials
make env
That copies .env.example to .env. Fill in two values:
| Variable | Where it comes from |
|---|---|
RASA_LICENSE |
Developer Edition licence key request |
OPENAI_API_KEY |
Your OpenAI account |
Install and train
make install
make train
make install runs uv sync --prerelease=allow. The prerelease flag is not
optional: the Mantle engine ships on the 3.19.0.devN line, and a plain
install resolves to a stable release that does not contain it.
make train validates the project before it packages anything. That validation
is stricter than you might expect, and it is on your side — you will meet it
again in Chapter 5.
Run it
make chat
Then work through this exact conversation:
you hello
bot Hello. What can I assist you with today?
you my passphrase is bluebird
bot Welcome back, Dana Okafor. You are now signed in.
you what is the balance on 10029384
bot The balance on account 10029384 is 2418.55 GBP.
you send 25 pounds to Sam Rivera
bot To confirm, you want to send 25 pounds to Sam Rivera. Is that correct?
you yes, confirm
bot 25 pounds have been sent to Sam Rivera.
Note what did not happen: you were never asked for the passphrase a second time. Two more skills ran, each needing to know who you are, and neither asked.
See the architecture in one command
make scopes
GLOBAL tools (project root; named in a skill import_tools)
get_customer_info
LOCAL tools (skill folder; auto-discovered)
authenticate/verify_passphrase
check_balance/fetch_balance
transfer_money/make_transfer
PROJECT memory (every skill reads and writes)
authenticated, customer_id, preferred_language
SKILL memory (public = other skills may read; private = never)
authenticate: public verification_method private passphrase_attempts
transfer_money: public amount, payee_name private transfer_reason
Four tools, three memory scopes. The rest of the tutorial is about why each one sits where it does.
The demo data
One customer, so the walkthrough is predictable:
| Field | Value |
|---|---|
| Name | Dana Okafor |
| Customer id | MB-4417 |
| Passphrase | bluebird |
| Accounts | 10029384 (current), 10029385 (savings) |
| Payee | Sam Rivera |
