These docs are for version 1.x of Rasa Open Source.

# Command Line Interface

## Cheat Sheet
The command line interface (CLI) gives you easy-to-remember commands for common tasks.

| Command                       | Effect |
|-------------------------------|--------|
| `rasa init`                  | Creates a new project with example training data, actions, and config files. |
| `rasa train`                 | Trains a model using your NLU data and stories, saves trained model in `./models`. |
| `rasa interactive`           | Starts an interactive learning session to create new training data by chatting. |
| `rasa shell`                 | Loads your trained model and lets you talk to your assistant on the command line. |
| `rasa run`                   | Starts a Rasa server with your trained model. |
| `rasa run actions`           | Starts an action server using the Rasa SDK. |
| `rasa visualize`             | Visualizes stories. |
| `rasa test`                  | Tests a trained Rasa model using your test NLU data and stories. |
| `rasa data split nlu`        | Performs a split of your NLU data according to the specified percentages. |
| `rasa data convert nlu`      | Converts NLU training data between different formats. |
| `rasa export`                | Export conversations from a tracker store to an event broker. |
| `rasa x`                     | Launch Rasa X locally. |
| `rasa -h`                    | Shows all available commands. |

## Create a new project
A single command sets up a complete project for you with some example training data.

```
rasa init
```

This creates the following files:

```
.
├── __init__.py
├── actions.py
├── config.yml
├── credentials.yml
├── data
│   ├── nlu.md
│   └── stories.md
├── domain.yml
├── endpoints.yml
└── models
    └── <timestamp>.tar.gz
```

The `rasa init` command will ask you if you want to train an initial model using this data.
If you answer no, the `models` directory will be empty.

## Train a Model
The main command is:

```
rasa train
```

This command trains a Rasa model that combines a Rasa NLU and a Rasa Core model. If you only want to train an NLU or a Core model, you can run `rasa train nlu` or `rasa train core`.

## Interactive Learning
To start an interactive learning session with your assistant, run

```
rasa interactive
```

## Talk to your Assistant
To start a chat session with your assistant on the command line, run:

```
rasa shell
```

## Start a Server
To start a server running your Rasa model, run:

```
rasa run
```

## Start an Action Server
To run your action server run

```
rasa run actions
```

## Visualize your Stories
To open a browser tab with a graph showing your stories:

```
rasa visualize
```

## Evaluate a Model on Test Data
To evaluate your model on test data, run:

```
rasa test
```

## Create a Train-Test Split
To create a split of your NLU data, run:

```
rasa data split nlu
```

## Convert Data Between Markdown and JSON
To convert NLU data from LUIS data format, WIT data format, Dialogflow data format, JSON, or Markdown to JSON or Markdown, run:

```
rasa data convert nlu
```

## Export Conversations to an Event Broker
To export events from a tracker store using an event broker, run:

```
rasa export
```

## Start Rasa X
Rasa X is a toolset that helps you leverage conversations to improve your assistant. You can find more information about it [here](/content/docs/rasa-x/index.html).

You can start Rasa X locally by executing

```
rasa x
```
