@totvslabs/carol

carol ai command line interface

Usage no npm install needed!

<script type="module">
  import totvslabsCarol from 'https://cdn.skypack.dev/@totvslabs/carol';
</script>

README

@totvslabs/carol

CAROL CLI - Carol AI command line interface

Prerequisites

  • System architecture x86_64
  • Node.js >=8.9
  • GCC, LLVM or C++ compiler should support C++11 features i.e. LLVM version 10.0.0 (clang-1000.11.45.2)
  • Cryptographic library libgcrypt should be installed on macOS, Linux or windows. Install on macOS using command brew install libgcrypt
  • Git scm

Getting started

Installation

  • You can install Carol CLI by following command:
    $ sudo npm install @totvslabs/carol -g
    

Commands

The Carol CLI currently supports following commands.

 Usage: carol [options] [command]

  Options:
    -v, --version                     output the version number
    -h, --help                        output usage information

# COMMANDS DESCRIPTION
1 login (alias: l) Login to a tenant.
2 new (alias: n) Create a new Carol app.
3 list (alias: ls) List Carol apps of an active tenant.
4 app (alias: a) Upload a file and/or submit against a connected Carol app.
5 connect (alias: c) Connect a tenant or an app in CLI.
6 status (alias: s) Carol CLI's connection status.
7 info (alias: i) Display Carol CLI information.
8 logout Logout a user from a configured tenant in CLI.

1. carol login (alias: l) command

Overview

carol login|l login to a specified tenant in CLI

Options

tenant

--tenant (alias: -t) <value>

Login to a specified tenant.

username

--username (alias: -u) <value>

Carol username.

examples

$ carol login -t shiv -u shiv@totvslabs.com
$ ? Password: ********

Output:
$ Connected tenant:shiv Connected user:shiv@totvslabs.com

2. carol new (alias: n) command

Overview

carol new|n <name> <version> generates a new Carol app.

Options

label

--label (alias: -l) <value>

Specify Carol app's display label.

description

--description (alias: -d) <value>

Specify description of the Carol app.

poweredBy

--poweredBy (alias: -p) <value>

Specify app powered by i.e. Carol etc.

examples

$ carol new demo 1.0.0

Output:
$ βœ”  Carol app demo prerequisites acquiring ...
  🌱 Carol app demo prerequisites acquired.
  βœ”  Carol app demo is creating ...
  πŸš€ Carol app demo created and published.
  Access your application: https://shiv.carol.ai/apps/dev/demo/1.0.0/index.html

 --------------------------------------------------------------
  πŸ”– Tenant:shiv User:shiv@totvslabs.com App:<no app connected>

3. carol list (alias: ls) command

Overview

carol list|ls lists Carol apps.

Options

app

--app (alias: -a) <name@version>

App name@version of a connected tenant and user.

examples

$ carol list

Output:
$ βœ” Fetching app list...
   Name                   AppVersion  Created                   LastUpdated             
   ---------------------  ----------  ------------------------  ------------------------
   Student Retention      1.0         2017-10-10T07:19:19.000Z  2017-10-10T07:21:19.000Z
   DiagnΓ³stico de Vendas  1.0         2017-10-10T22:50:19.000Z  2017-10-10T22:59:01.000Z

   --------------------------------------------------------------------
   πŸ”– Tenant:robson User:robson.poffo@totvs.com App:<no app connected>
$ carol list --app demo@1.0.0

Output:
$ Label      : demo
  Name       : demo
  Version    : 1.0.0
  Description: -
  Powered By : Carol
  Url        : https://shiv.carol.ai/apps/dev/demo/1.0.0/index.html

  File Name               Type  Updated                 
  ----------------------  ----  ------------------------
  site.zip                WEB   2018-10-02T20:12:42.333Z
  welcomeCarolApp-AI.zip  AI    2018-10-02T20:27:10.636Z

  --------------------------------------------------------------
  πŸ”– Tenant:shiv User:shiv@totvslabs.com App:<no app connected>

4. carol app (alias: a) command

Overview

carol app|a uploads a file and/or submits a connected Carol app for review.

Options

upload

--upload (alias: -u) <file-path>

Uploads a zip file against the connected app.

submit

--submit (alias: -s)

Submits a connected app for review.

examples

$ carol app -u ./welcomeCarolApp-AI.zip

Output:
$ βœ”  Carol app demo upload is in progress ...
  πŸš€ Carol app demo@1.0.0 uploaded and available for access.
  Access your application: https://shiv.carol.ai/apps/dev/demo/1.0.0/index.html

  File Name               File Type  Updated                 
  ----------------------  ---------  ------------------------
  site.zip                WEB        2018-10-02T20:12:42.333Z
  welcomeCarolApp-AI.zip  AI         2018-10-04T18:38:11.470Z

  --------------------------------------------------------
  πŸ”– Tenant:shiv User:shiv@totvslabs.com App:demo@1.0.0

2.
```cmd
$ carol app -s

Output:
$ Carol app demo@1.0.0 submitted for review.
   --------------------------------------------------------
   πŸ”– Tenant:shiv User:shiv@totvslabs.com App:demo@1.0.0

5. carol connect (alias: c) command

Overview

carol connect|c <entity> <value> connects to a tenant or an app in CLI.

Where, entity = tenant or app value = <tenant-name@username> or <app-name>@<app-version> for entity above respectively.

examples

$ carol connect tenant shiv@shiv@totvslabs.com

Output:
$ Connected tenant:shiv Connected user:shiv@totvslabs.com 
$ carol connect app demo@1.0.0

Output:
$ Tenant:shiv Connected app:demo@1.0.0 

6. carol status (alias: s) command

Overview

carol status|s gives status of connected tenant, user and app in CLI.

examples

$ carol status

Output:
$ Tenant:shiv User:shiv@totvslabs.com App:demo@1.0.0

7. carol info (alias: i) command

Overview

carol info|i gives cli and system details.

examples

$ carol info

Output:
$ CAROL CLI
  [System Information]
  OS Version     : macOS High Sierra
  NodeJS Version : v8.12.0
  NPM Version    : 6.4.1
  [Carol Information]
  CLI Version    : 1.0.79

8. carol logout command

Overview

carol logout <tenant> <username> Logs out a user from a tenant configured in CLI.

examples

$ carol logout shiv shiv@totvslabs.com

Output:
$ Logged out user:shiv@totvslabs.com from tenant:shiv 

Issues

License

The MIT License (MIT)

Copyright (c) 2018 [TOTVS Labs]