Giter Club home page Giter Club logo

bott's Introduction

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!

bott's People

Contributors

subbu963 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

bott's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.