CLI Tools for the Microsoft Bot Framework
Перейти к файлу
Emilio Munoz 3b12e37f4b
Cleaning component governance alerts (#1118)
* Cleaning component governance alerts

* Increasing pnpm version

* Setting pnpm to 4.9.3

* Setting pnpm to 4.14.4
2021-02-17 09:38:24 -08:00
.github Update CODEOWNERS 2020-10-15 13:28:39 -07:00
.vscode Support wild cards in nuget versions for dialog:merge (#1096) 2021-01-27 11:09:28 -08:00
build Add runCodesignValidationInjection: false to pipelines (#1055) 2020-11-11 16:38:31 -08:00
common Cleaning component governance alerts (#1118) 2021-02-17 09:38:24 -08:00
data Updated specs (#580) 2020-02-25 10:50:28 -08:00
media bf cli doc header (#261) 2019-10-22 14:07:46 -07:00
packages Cleaning component governance alerts (#1118) 2021-02-17 09:38:24 -08:00
scripts Adding Dialog to CLI core 2020-05-05 17:57:48 -04:00
specs File was already moved to sdk/orchestrator/docs. (#1056) 2020-11-17 11:25:16 -08:00
test Shared root tsconfig.json with overrides (#1003) 2020-10-07 17:32:17 -07:00
.gitattributes chore: swap to rush/pnpm & azure-pipelines.yml (#381) 2019-11-22 14:38:35 -08:00
.gitignore Fix bug in luis:build and support operations in generator (#641) 2020-04-03 13:47:30 -07:00
AzureCli.md Add link for full command usage documentation (#636) 2020-03-03 13:57:01 -08:00
CONTRIBUTING.md Update CONTRIBUTING.md (#873) 2020-07-02 14:42:09 -07:00
LICENSE Update LICENSE 2019-05-16 11:22:43 -07:00
PRIVACY.md Create PRIVACY.md 2019-05-16 11:25:00 -07:00
PortingMap.md Update porting map (#833) 2020-06-01 12:25:40 -07:00
README.md Fix markdown link sytax (#1066) 2020-12-02 16:54:36 -08:00
ToolLifetimeSchedule.md Added tool deprecation schedule (#368) 2019-11-21 13:04:41 -08:00
rush.json Cleaning component governance alerts (#1118) 2021-02-17 09:38:24 -08:00
tsconfig.json Shared root tsconfig.json with overrides (#1003) 2020-10-07 17:32:17 -07:00

README.md

Bot Framework CLI

BF Command Line Interface

Build Status

The new BF Command Line Interface (CLI) tool replaces the collection of standalone tools used to manage Bot Framework bots and related services. We have ported most tools and are in process of porting the rest. The new BF CLI aggregates the collection of cross-platform tools into one cohesive and consistent interface.

The old tools will be deprecated in subsequent releases. All new investments, bug fixes, and new features will be implemented in the new consolidated BF CLI alone.

Installation

BF is based on the Node.js platform and the OClif framework where it inherits its command line parsing style, and plugin architecture platform.

You must download the following prerequisites:

Install the tool using the following command:

$ npm i -g @microsoft/botframework-cli
$ bf

Available Commands

The following commands are currently available:

Future Commands

The following commands will be ported in upcoming releases:

  • Dispatch

See Porting Map for a mapping reference between old and new tools

Overview

The Bot Framework Command Line Interface (BF CLI) cross-platform tool is used to manage Bot Framework bots and related services. It is part of the Microsoft Bot Framework, a comprehensive framework for building enterprise-grade conversational AI experiences. In particular, BF CLI provides fundamental functionality when used in conjunction with Continuous Integration, and Continuous Deployment (CI/CD) pipelines.

As you build your bot, you may also need to integrate AI services like LUIS.ai for language understanding, QnAMaker.ai for your bot to respond to simple questions in a Q&A format, and more. The bf luis command is used to convert, and translate language definition .lu files or generate corresponding source (C# or JavaScript) code. Then, use the Luis Tool to deploy the local files, train, test, and publish them as Language Understanding models within the LUIS service. If used to define QnAMaker question/answer Knowledgebase, use the bf qnamaker command to create and manage QnAMaker assets both locally, and on the QnAMaker service. Please refer to the lu library documentation for extended discussion on how to work with .lu file formats. Note: You may be familiar with the Luis command if you used the legacy LuDown and LuisGen tools.

As your bot grows in sophistication, use Dispatch CLI to create and evaluate LUIS models used to dispatch intent across multiple bot modules such as LUIS models, QnA knowledgebases, and assist in routing messages to backend bot skills.

To test and refine your bot, you can use the new V4 Bot Framework Emulator. The Bot Framework Emulator is a cross-platform Electron application that enables you to test and debug your bots on local machine or in the cloud.

Also, during early designs stages you may want to create mockup of conversations between the user and the bot for the specific scenarios your bot will support. Use bf chatdown command to author conversation mockup .chat files and convert them into rich transcripts and view the conversations in the the Emulator.

Lastly, with the Azure CLI Bot extension (az bot command), you can create, download, publish, configure channels with the Azure Bot Service. It is a plugin that extends the functionality of Azure CLI to manage your Azure Bot Service assets.

See Also

Issues and Feature Requests

Please file issues and feature requests here.

Also, see current known issues.

Thank you for your support.

Privacy

Privacy is very important to us. BF CLI contains optional instrumentation that is designed to help us improve the tool based on anonymous usage patterns. It is disabled, opted-out by default. If you elect to opt-in, we will gather some usage data as follows:

  • Command group calls
  • Flags used excluding specific values (i.e. if used parameter --folder:name, we will only gather the use of --folder but will not capture name).

To disable data collection see the bf config command.

Please refer to Microsoft Privacy Statement for more details.

Enable Telemetry in Continuous Integration Pipelines

Per above, Microsoft will only collect anonymous data to help improve the CLI. To set your CI/CD pipeline telemetry collection behavior set the following OS environment variable:

  • set BF_CLI_TELEMETRY = true : Bypass prompts and enables telemetry collection.
  • set BF_CLI_TELEMETRY = false : Bypass prompts and disables telemetry collection (default).
  • BF_CLI_TELEMETRY = null (absent) : If no value is set in configuration file defaults to false - disabled.

Nightly builds

Nightly builds are generated using the latest code. Therefore, they may not be stable, and most likely lack up to date documentation. These builds are better suited for more experienced users, although everyone is welcome to use them and provide feedback.

Install using npm:

npm i -g @microsoft/botframework-cli@next

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Reporting Security Issues

Security issues and bugs should be reported privately, via email, to the Microsoft Security Response Center (MSRC) at secure@microsoft.com. You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Further information, including the MSRC PGP key, can be found in the Security TechCenter.

Copyright (c) Microsoft Corporation. All rights reserved.