Skip to content

octo is AI agent that works on the cli and help programmers to understand and work on github repositories while being in their favourite terminal

License

Notifications You must be signed in to change notification settings

pranavvp16/octo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Octo: AI-Powered Git Companion

Octo seamlessly blends the power of artificial intelligence with the familiarity of Git, empowering you to interact with your repositories in a whole new way. Whether you're a seasoned developer or just getting started with Git, Octo offers innovative features to streamline your workflow and enhance your productivity.

Installation

Create a virtual environment with python venv or conda

Install octo with pip

  pip install -r requirements.txt
  pip install .

This will successfully install octo package.

Environment variables

Firstly you need to have OPENAI_API_KEY and GITHUB_TOKEN and set the environment variables OPENIAI_API_KEY and GITHUB_TOKEN respectively.

$ echo "export OPENAI_API_KEY=<KEY>" >> ~/.bashrc
$ echo "export GITHUB_TOKEN=<TOKEN>" >> ~/.bashrc

Demo

Commands

For each command to work octo is prefix.

  • --help: Information about usage of octo
  • --version: to display the version of octo
  • start: To establish a connection with MindsDB server
  • init: Initialize a repo
  • status: to check the status of octo
  • tell: Asking question realted to the repo
  • checkout: To change the working repo
  • drop: To remove a model
  • list: To display all the models present
  • stop: to disconnect the MindsDB server

Run Locally

Clone the project

  git clone https://github.com/pranavvp16/octo.git

Go to the project directory

  cd octo

Install dependencies

  pip install -r requirements.txt
  pip install git+https://github.com/pranavvp16/mindsdb.git@llama_index
  pip install .

Start the Companion

start command to start the mindsdb server locally

  octo start

init command to initialize the repo

  octo init <GitHubUsername>/<repo> <branch_name>

status command to check the status of the octo

  octo status

tell command for asking questions about the repo

  octo tell "<Your Question>"

checkout command to change the working repo

  octo checkout <GitHubUsername>/<repo>

drop command to remove a model

  octo drop <GitHubUsername>/<repo>

list command to display all the models initialized

  octo list

stop command to terminate the mindsdb server

  octo stop 

Tech Stack

Python

MindsDB

Authors

License

octo is being licensed under the MIT License.

About

octo is AI agent that works on the cli and help programmers to understand and work on github repositories while being in their favourite terminal

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages