Welcome to Shelly - the coolest CLI tool around! Ingesting documents and generating instant answers to questions about those documents using ChatGPT, Shelly provides you with the Sheldon Cooper you never had at your fingertips.
- What is Shelly?
- Demo
- Features
- Installation
- Configuration
- Usage
- Command Topics
- Data Collection and Analytics
- License
Shelly is a command-line tool that ingests documents into a vector store and generates instant answers to your questions about those documents using ChatGPT. Inspired by the iconic character of Sheldon Cooper from The Big Bang Theory, Shelly brings a fun and quirky vibe to your command-line experience.
With Shelly, you can have the genius mind of Sheldon Cooper at your fingertips, answering all your queries with its powerful GPT-based algorithms. Gone are the days of tirelessly searching for answers, as Shelly provides you with accurate solutions using its advanced machine learning technology.
bigbangtheory-trivia.mov
code_class-validator.mov
- Ingest documents and allows answering questions about those documents
- Web UI
To get started with Shelly, you can install it via npm using the following command:
npm i -g @rpidanny/shelly
Alternatively, you can download installers for Windows
, Linux
, and macOS
from the release page.
After installing Shelly, you need to configure it using the following command:
shelly configure
This command will prompt you to add your OpenAI keys and vector store configurations.
Shelly supports two options for the vector store:
We recommend using Milvus, as it offers an API key-free experience and has no limitations on the number of collections you can create.
To get started with Milvus, you can easily create a local instance by running shelly milvus start
or by using the provided Docker Compose file located at docker/milvus/docker-compose.yml
.
cd docker/milvus
docker-compose up -d
$ npm install -g @rpidanny/shelly
$ shelly COMMAND
running command...
$ shelly (--version)
@rpidanny/shelly/1.14.1 linux-x64 node-v18.16.0
$ shelly --help [COMMAND]
USAGE
$ shelly COMMAND
...
shelly ask
- Ask questions or instruct shelly to do something.shelly config
- Get currently set configsshelly configure
- Configure shellyshelly events
- Create iCal eventsshelly help
- Display help for shelly.shelly history
- Print historyshelly ingest
- Ingest directory to a vector storeshelly milvus
- Start local Milvus vector storeshelly serve
- start the Shelly web service
This CLI app only collects essential data for analytics purposes to improve user experience. The information collected includes:
- User's operating system (OS) details (e.g., version, architecture, type)
- App metadata (e.g version, name)
- Id of the command used.
Shelly is released under the MIT License. See the LICENSE file for details.