Skip to content
This repository has been archived by the owner on Jun 30, 2022. It is now read-only.

[Botskills][TypeScript] Implement Skill CLI Tool #1085

Merged
merged 33 commits into from
May 2, 2019
Merged
Show file tree
Hide file tree
Changes from 17 commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
8690f3c
Add first spike for Skill CLI Tool
Apr 3, 2019
873433e
Fix issues
Apr 3, 2019
5a49dc3
Remove '--prefix' argument
Apr 4, 2019
ee7c2e2
Update dependencies, adding TSLint and Mocha, update scripts
Apr 5, 2019
1e6d16d
Continue implementing CLI Tool
Apr 5, 2019
c938a2d
Fix TSLint warning and add comment
Apr 5, 2019
54b372c
Rename tool, modularize logic in botskills-connect
Apr 8, 2019
237ca16
Add botskills-list logic
Apr 8, 2019
53ab158
Add initial documentation
Apr 8, 2019
b99ddf3
Fix TSLint warnings and refactor a message
Apr 8, 2019
112448f
Implement Logger, replace all console.log for using Logger
Apr 9, 2019
4e2ea29
Add botskills disconnect logic
Apr 9, 2019
f67e01d
Add detailed documentation for each command
Apr 10, 2019
55a2989
Add TSLint as prebuild task
Apr 10, 2019
28ae615
Move README file, add links to commands' documentation
Apr 10, 2019
1a406dd
Implement remote skill manifest invocation, add new option to disting…
Apr 11, 2019
f3db5e4
Implement path.extname, extend logger functionality for success messages
Apr 11, 2019
5719645
Implement functionality to update dispatch, add documentation, update…
Apr 16, 2019
fc64f1a
Add handler to execute dispatch
enzocano Apr 17, 2019
c390693
Start refactor of structure, refactor connectSkills
Apr 23, 2019
a05059d
Refactor disconnect, fix logger in connect
Apr 24, 2019
16fd092
Update documentation
Apr 24, 2019
fb38ab9
Finish updating and fixing latest changes for connecting and disconne…
Apr 24, 2019
bf5c484
Refactor list command, unify skillManifest models
Apr 26, 2019
22cbb56
Start implementation for authentication
Apr 26, 2019
529988b
Add index for exposing tool functionality as library
Apr 26, 2019
8767a8d
Add 'cs' and 'ts' argument to commands, customize paths on the assist…
Apr 29, 2019
9c06edc
Add reply-urls to ensure correct redirect to token's bot
enzocano Apr 30, 2019
d9e22cc
Clean comments, move models to models folder
Apr 30, 2019
67e0c51
Add logic to keep existent Reply URLs in the app
Apr 30, 2019
27466bd
Fix few TSLint warnings
Apr 30, 2019
42e72bf
Implement dispatch to disconnect command, update models and validations
May 2, 2019
c890a9f
Merge branch '4.4' into southworks/skill-cli-tool
May 2, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions lib/typescript/botskills/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
lib/**
bin/**
typings/**
export/**
40 changes: 40 additions & 0 deletions lib/typescript/botskills/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# Botskills Command Line tool
The Botskills tool is a command line tool to manage the skills connected to your assistant solution.

## Prerequisite
- [Node.js](https://nodejs.org/) version 10.8 or higher

## Installation
To install using npm
```bash
npm install -g botskills
```
This will install botskills into your global path.
To uninstall using npm
```bash
npm uninstall -g botskills
```

## Botskills functionality
- [Connect](./docs/connect-disconnect.md) a Skill to your assistant
- [Disconnect](./docs/connect-disconnect.md) a Skill from your assistant
- [List](./docs/list.md) all Skills connected to your assistant

## Nightly builds
Nightly builds are based on the latest development code which means they may or may not be stable and probably won't be documented. These builds are better suited for more experienced users and developers although everyone is welcome to give them a shot and provide feedback.

You can get the latest nightly build of Botskills from the [BotBuilder MyGet]() feed. To install the nightly
```bash
npm config set registry https://botbuilder.myget.org/F/aitemplates/npm/
darrenj marked this conversation as resolved.
Show resolved Hide resolved
```
Install using npm
```bash
npm install -g botskills
```
To reset registry
```bash
npm config set registry https://registry.npmjs.org/
```

## Further Reading
- [Create and customize Skills for your assistant](https://github.com/Microsoft/AI/blob/master/docs/skills/typescript/create.md).
50 changes: 50 additions & 0 deletions lib/typescript/botskills/docs/connect-disconnect.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Connect a Skill to your assistant

To connect a Skill to your assistant:

```bash
botskills connect [options]
```

### Options

| Option | Description |
|-------------------------------|-------------------------------------------------------------------------|
| -l, --localResource <path> | Path to local Skill Manifest file |
| -r, --remoteResource <path> | URL to remote Skill Manifest |
| -a, --assistantSkills <path> | Path to the assistant Skills configuration file |
| --verbose | (OPTIONAL) Output detailed information about the processing of the tool |
| -h, --help | Output usage information |

An example on how to use it:

```bash
botskills connect --skillManifest "./skills/customSkill/customSkillManifest.json" --assistantSkills "./skills.json" --verbose
```

> **Note:** The paths to both the Skill Manifest and the assistant Skills configuration file can be relative or absolute paths equally, and should be explicitly a `.json` file.

# Disconnect a Skill from your assistant

To disconnect a Skill from your assistant:

```bash
botskills disconnect [option]
```

### Options

| Option | Description |
|-------------------------------|-------------------------------------------------------------------------|
| -s, --skillName <path> | Name of the skill to remove from your assistant (case sensitive) |
| -a, --assistantSkills <path> | Path to the assistant Skills configuration file |
| --verbose | (OPTIONAL) Output detailed information about the processing of the tool |
| -h, --help | Output usage information |

An example on how to use it:

```bash
botskills disconnect --skillName "customSkill" --assistantSkills "./skills.json" --verbose
```

> **Note:** The path to the assistant Skills configuration file can be relative or absolute path, and should be explicitly a `.json` file.
14 changes: 14 additions & 0 deletions lib/typescript/botskills/docs/list.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Listing connected skills

To acces the list of connected skills:
```bash
botskills list [options]
```

### Options

| Option | Description |
|-------------------------------|-------------------------------------------------------------------------|
| -a, --assistantSkills <path> | Path to the assistant Skills configuration file |
| --verbose | (OPTIONAL) Output detailed information about the processing of the tool |
| -h, --help | Output usage information |
Loading