Skip to content

Commit 78e73c6

Browse files
authored
Update README.md
1 parent 493faa4 commit 78e73c6

File tree

1 file changed

+128
-5
lines changed

1 file changed

+128
-5
lines changed

README.md

+128-5
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,134 @@
1-
# octo
1+
# Octo: AI-Powered Git Companion
22
<img src="media/logo-no-background.png">
3-
[![MIT License](https://img.shields.io/badge/License-MIT-green.svg)](https://choosealicense.com/licenses/mit/)
4-
<br>
5-
octo is AI agent that works on the cli with native commands of git like **status**, `checkout`, `init` and a additional command `tell` which allows user to interact with the agent, and QA any GitHub repository.
3+
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.
4+
5+
6+
7+
## Installation
8+
Create a virtual environment with python venv or conda
9+
10+
Install octo with pip
11+
12+
```bash
13+
pip install -r requirements.txt
14+
```
15+
```bash
16+
pip install .
17+
```
18+
This will successfully install octo package.
19+
20+
21+
**Environment variables**
22+
23+
Firstly you need to have `OPENAI_API_KEY` and `GITHUB_TOKEN` and set the environment variables `OPENIAI_API_KEY` and `GITHUB_TOKEN` respectively.
24+
25+
```bash
26+
$ echo "export OPENAI_API_KEY=<KEY>" >> ~/.bashrc
27+
```
28+
```bash
29+
$ echo "export GITHUB_TOKEN=<TOKEN>" >> ~/.bashrc
30+
```
31+
32+
## Demo
33+
34+
**Commands**
35+
36+
For each command to work *octo* is prefix.
37+
38+
- --help: Information about usage of octo
39+
- --version: to display the version of octo
40+
- start: To establish a connection with MindsDB server
41+
- init: Initialize a repo
42+
- status: to check the status of octo
43+
- tell: Asking question realted to the repo
44+
- checkout: To change the working repo
45+
- drop: To remove a model
46+
- list: To display all the models present
47+
- stop: to disconnect the MindsDB server
48+
49+
50+
51+
## Run Locally
52+
53+
Clone the project
54+
55+
```bash
56+
git clone https://github.com/pranavvp16/octo.git
57+
```
58+
59+
Go to the project directory
60+
61+
```bash
62+
cd octo
63+
```
64+
65+
Install dependencies
66+
67+
```bash
68+
pip install -r requirements.txt
69+
```
70+
```bash
71+
pip install git+https://github.com/pranavvp16/mindsdb.git@llama_index
72+
```
73+
74+
```bash
75+
pip install .
76+
```
77+
78+
79+
**Start the Companion**
80+
81+
`start` command to start the mindsdb server locally
82+
```bash
83+
octo start
84+
```
85+
`init` command to initialize the repo
86+
```bash
87+
octo init <GitHubUsername>/<repo> <branch_name>
88+
```
89+
`status` command to check the status of the octo
90+
```bash
91+
octo status
92+
```
93+
`tell` command for asking questions about the repo
94+
```bash
95+
octo tell "<Your Question>"
96+
```
97+
`checkout` command to change the working repo
98+
```bash
99+
octo checkout <GitHubUsername>/<repo>
100+
```
101+
`drop` command to remove a model
102+
```bash
103+
octo drop <GitHubUsername>/<repo>
104+
```
105+
`list` command to display all the models initialized
106+
```bash
107+
octo list
108+
```
109+
`stop` command to terminate the mindsdb server
110+
```bash
111+
octo stop
112+
```
113+
## Tech Stack
114+
115+
Python
116+
117+
MindsDB
118+
119+
120+
121+
122+
123+
## Authors
124+
125+
- [Pranav Prajapati](https://github.com/pranavvp16)
126+
- [Vedant Agrawal](https://github.com/vedantag17)
127+
128+
6129

7130
### License
8131
octo is being licensed under the [MIT License](https://github.com/pranavvp16/octo/blob/master/LICENSE).
9132

10133
<img src="media/badge-dark.svg#gh-dark-mode-only" width=350 height=90>
11-
<img src="media/badge-light.svg#gh-light-mode-only" width=350 height=90>
134+
<img src="media/badge-light.svg#gh-light-mode-only" width=350 height=90>

0 commit comments

Comments
 (0)