Narcissistic Piano Mover
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

ask-cli

1.4.1 • Public • Published

The Alexa Skills Kit Command Line Interface (ASK CLI) is a tool for you to manage your Alexa skills and related AWS Lambda functions. With the ASK CLI, you can now quickly and easily create new skills and update your existing skills from the command line and local development environment.

NPM:

total npm downloads for ask-cli monthly npm downloads for ask cli

Step 1: Prerequisites for ASK CLI

Step 2: Install ASK CLI

Use npm to install ASK CLI. Run the npm global install command into the ask-cli folder:

$ npm install -g ask-cli

If you are using Linux, the installation may require sudo. We recommend using nvm (node version manager) to install Node.js and npm to avoid permissions issues. See [Using a version manager to install Node.js and npm]https://docs.npmjs.com/getting-started/installing-node#using-a-version-manager-to-install-nodejs-and-npm.

$ (sudo) npm install -g ask-cli

Step 3: Initialize ASK CLI

The first time you use ASK CLI, you must call the init command to initialize the tool with your Amazon developer account.

$ ask init

You will be prompted to select your profile and to log in to your developer account. Once the initialization is complete, you can use ASK CLI to manage your skills.

Step 4: Use ASK CLI Commands to Manage Your Skills

Creating a new skill

The ask new command allows you to quickly create a new Alexa skill.

$ ask new --skill-name 'my-skill'
$ cd my-skill
$ ask deploy

This will create a fully working "Hello World" skill that can be enabled and invoked immediately. If you make any subsequent changes, just use ask deploy again to deploy all of your changes.

Working on an existing skill

The ask clone command allows you to set up a local project from your existing skill.

$ ask clone --skill-id 'amzn1.ask.skill.UUID'
$ cd my-existing-skill-name
# make some changes here
$ ask deploy

ask deploy will deploy all of your changes to skill manifest, interaction models, and AWS Lambda function(s).

To see all of the commands available in ASK CLI, refer to the ASK CLI Reference.

Change Log

July 12, 2018

v1.4.1

  • Create Lambda function with runtime "nodejs8.10" and make sure the runtime of Lambda function is "nodejs8.10" for each deploy.
  • Use environmental variable "ASK_DOWNSTREAM_CLIENT" to denote ask-cli's downstream client.
  • Add a new command "ask api get-skill-credentials".
  • Multiple bug fixes.

June 21, 2018

v1.4.0

  • Start to support eTag through skill project for all the skill resources: skill.json, models, Lambda functions and In-Skill Products.
  • Improved "ask deploy" by avoiding the potential project overwriting with eTag support. Added "--force" option to deploy the local skill project regardless of eTags, and overwrite the existing skill in the server.
  • Added new command "ask diff" to display the list of differences between local and remote versions of the specified target.
  • Added "resources" field in the project's config ({skill_project}/.ask/config) file to store resource information including eTag(s).

May 16, 2018

v1.3.2

  • Supported --file option as file input for create-account-linking API.

May 10, 2018

v1.3.1

  • "ask validate" becomes generally available now.

May 3, 2018

v1.3.0

  • Started supporting In-Skill Product management.
  • Added new commands "ask add isp" and "add remove isp" to add/remove In-Skill Products to/from the local skill project.
  • Added new command "ask status --isp" which can be used to track the deploy status of In-Skill Products.
  • Modified "ask deploy" command to support deploying In-Skill Products with Skill.
  • Added a new target "isp" to the "ask deploy --target " command to support standalone In-Skill Product deployment.
  • Modified "ask clone" command to support cloning In-Skill Products associated with existing Skill.
  • Added list of new API commands to support In-Skill Products management.
  • Integrated the AWS credentials setup functionality into the CLI. CLI can use environment variables (ASK_REFRESH_TOKEN, AWS_ACCESS_KEY_ID, and so on) to run all the operations.
  • New command "ask util generate-lwa-token", which enables the users to generate access token from their own 3P client credential.
  • Changed the timeout for CLI generated Lambda function to 8s.

April 26, 2018

v1.2.2

  • Supported the usage of profile for "ask new --template".
  • Changed the invocation name of the hello world template to "greeter".
  • Avoid enabling skill when using "ask deploy --no-wait" to create the skill and model for the first time.

April 25, 2018

v1.2.1

  • Enforced the regex pattern of profile name for ASK CLI to be /[a-zA-Z0-9-_]+/.

April 18, 2018

v1.2.0

  • Changed the SDK dependency of the HelloWorld template skill for "ask new" comand to "ask-sdk-core" v2 and "ask-sdk-model".
  • Changed the runtime setting for CLI's creation of Lambda function from v6.10 to v8.10 to support latest Javascript syntax.
  • Provided better error handling for "ask new --url" when the url or its content is invalid.
  • Fixed the bug for "ask clone" with a profile where the name of the AWS profile is different than the ASK profile.
  • Modified "Hello World" template by removing the US_FIRST_NAME intent to support non-US users.

April 11, 2018

v1.1.6

  • Added two new API commands: get-validation and validate-skill.
  • Added new command "ask validate" which can be used to validate a skill before submission for certification or at any time during development as regression testing.

April 10, 2018

v1.1.4

  • Added new API command: intent-requests-history.
  • Fixed bug for transforming skill manifest from v0 to v1.

March 12, 2018

v1.1.2

  • Bug fix for "ask clone" with a non-default profile.

January 31, 2018

v1.1.0 brings the ASK CLI out of beta, with a few notable changes.

  • Added new API commands: delete-account-linking, enable-skill, disable-skill, get-skill-enablement.
  • Added get-skill-status API and remove get-model-status API. Response for get-skill-status will include the status for manifest and all interaction models for the skill.
  • Added optional "stage" parameter for the following API commands, allowing retrieval of live skill details: get-skill, get-model, head-model, get-account-linking.
  • skill.json now has "manifest" instead of "skillManifest" as the top-level key. The merge field in /.ask/config will also be changed to "manifest".

December 28, 2017

  • Version: 1.0.0-beta.9
  • Support the setting for default expiration time for create-account-linking API.

December 7, 2017

  • Version: 1.0.0-beta.8
  • "ask new --template" message improvements.

November 30, 2017

  • Version: 1.0.0-beta.6
  • Publish private skill management for ask-cli.

November 22, 2017

  • Version: 1.0.0-beta.5
  • "ask new" supports option usage of "--template" now. User can select specific template as the start of skill development.

October 27, 2017

  • Version: 1.0.0-beta.4
  • Support Lambda for India and FarEast region.

October 13, 2017

  • Version: 1.0.0-beta.3
  • Add delete-skill command in "api" namespace.
  • Check port usage for ask init to avoid port conflict.
  • Forbid empty string for account linking creation.

October 6, 2017

  • Version: 1.0.0-beta.2
  • Add constraints and filtering for skill names.

September 12, 2017

  • Version: 1.0.0-beta.1
  • Error message improvement for Lambda operations.

September 5, 2017

  • Version: 1.0.0-beta.0
  • Birthday for ask-cli.

Keywords

install

npm i ask-cli

Downloadsweekly downloads

1,566

version

1.4.1

license

Apache 2.0

last publish

collaborators

  • avatar