Skip to content

subbu963/bott

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to bott: Your Terminal Copilot

bott (short for bot-in-terminal) is not just a command line tool; it's your copilot in the vast world of the terminal. Designed to make you feel like a terminal pro, bott assists you with day-to-day activities, provides helpful tips, and even adds a touch of humor to your command line experience.

Installation

Rust

Install rust if you don't have it already and ensure a version greater than 1.74.0

$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
$ source $HOME/.cargo/env
$ rustc --version

Bott

Install bott with a single command:

$ curl -o- https://raw.githubusercontent.com/subbu963/bott/v0.1.0/install.sh | bash 

Usage

Whether you prefer the intelligence of OpenAI or the wisdom of Ollama, bott has you covered. Choose your Large Language Model (LLM) and unleash the power of your terminal.

Choosing your LLM (Large Language Model)

With Openai

  1. Navigate to OpenAI's API Keys section and create a new API key or use an existing one.
  2. Configure bott to use OpenAI:
$ bott! config set -k llm openai
$ bott! config set -k openai:api_key -v YOUR_API_KEY

Securely stored in a keychain, your API key is safe with bott.

  1. Default model is gpt-4. If you want to change the OpenAI model (refer to [OpenAI's documentation](https://platform.openai.com/docs/models/gpt-4-and-gpt-4-turbo for available models), do:
$ bott! config set -k openai:model -v YOUR_PREFERRED_MODEL

With Ollama

  1. Download Ollama from ollama.ai.
  2. Default model is codellama:7b-instruct. If you want to change the model (refer to the library for available models), do:
$ ollama pull codellama:7b-instruct
$ bott! config set -k ollama:model -v codellama:7b-instruct
  1. Configure bott to use Ollama:
$ bott! config set -k llm -v ollama

Secure and ready, bott now utilizes the Ollama model to enhance your terminal experience.

Commands

Queries

Bott excels in aiding you with everyday terminal activities. For instance, when working in a Git repository and wanting to add only the changed JS files to a commit:

$ bott! query "figure out all the js files that i have changed in the current directory and add them to the commit."

Bott keeps track of sessions, allowing you to ask follow-up questions:

$ bott! query "do the same for html files as well"

Debug

When troubleshooting commands, bott shines as your debugging assistant. If a command found online, like fetching the OS version, fails:

$ bott! run cat /etc/os-release
$ bott! debug

Bott steps in to investigate and find out why the command is failing on your system.

Enjoy the journey with bott, your trusty companion in the terminal!