Permalink
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
163 lines (98 sloc) 5.94 KB

Jovo CLI

The Jovo Command Line Tools offer the ability to create, prototype, test, and deploy your voice app quickly. Learn more about all the commands here.

Introduction

The Jovo CLI (GitHub Repository: jovotech/jovo-cli) is the center of voice app development with the Jovo Framework. With it, you can quickly create new Jovo projects, create language models and deploy them to the voice platforms, and run your voice apps locally for easy prototyping and testing.

Installation

To make best use of the Jovo CLI, install it globally via npm:

$ npm install -g jovo-cli

After successful installation, you should be able to see the jovo menu by just typing the following into your command line:

$ jovo

You can check the version number (and compare it to the jovo-cli npm package version) with this command:

$ jovo -V

Troubleshooting

Find out more about technical requirements here: Getting Started > Installation.

If you had the CLI installed before the release of v1.0, and are running into problems after updating it to the newest version, please try to uninstall it globally before you install it again:

$ npm uninstall -g jovo-cli

If you run into other problems, please submit an issue here: jovotech/jovo-cli. Thank you!

Commands

Jovo CLI commands can be divided into basic commands (to create and run projects) and platform commands (to interact with a voice platform).

Command Description
Basic Commands jovo new Creates a new Jovo project
jovo run Runs a local development server (webhook)
Platform Commands jovo build Builds platform-specific language model files into /platforms based on /models folder
jovo get Downloads an existing platform project into the /platforms folder
jovo deploy Deploys the /platforms project files to the voice platforms

Basic Commands

These are the basic commands that help you develop Jovo voice apps faster, without interacting with the voice platforms (see platform commands for features that are language model specific).

jovo new

jovo new command

You can create a Jovo project into a new directory with the following command:

## Default
$ jovo new <directory>

Learn more about this command here: cli/new.

jovo run

jovo run command

You can use the jovo run command to start the development server in your index.js file, and then add the Jovo Webhook as an endpoint to the respective developer consoles.

Learn more here: Configuration > Hosting.

# Default
$ jovo run

Learn more about this command here: cli/run.

Platform Commands

Platform commands are used to interact with the voice platforms (Amazon Alexa or Google Assistant/Dialogflow). You don't have to use these commands if you just want to maintain the language/interaction models on the respective developer platforms.

See the following tutorials for alternative ways to create language models on the respective developer platforms:

jovo build

jovo build command

jovo build is the command to create and update the platform specific interaction models using the Jovo model. Using the files in the /models folder and converting them into files in the /platforms folder.

To learn more about Jovo Language Models, take a look at App Configuration > Models.

After the initial init process, you can either run build separately for each platform, or just let the CLI fetch the right information from the app.json file.

# Default
$ jovo build

Learn more about this command here: cli/build.

jovo get

jovo get command

jovo get will import an existing Alexa Skill (Skill Information and Interaction Model) or Dialogflow agent (work in progress) into the /platforms folder.

To get the Skill from the Amazon developer console, you have to set up ASK CLI first.

# Choose from list of Skills
$ jovo get <alexaSkill|googleAction>

Learn more about this command here: cli/get.

jovo deploy

jovo deploy command

jovo deploy is used to upload the platform folders to their respective developer consoles.

# Default
$ jovo deploy

Learn more about this command here: cli/deploy.