A RAG (Retrieval-Augmented Generation) tool for managing and querying git repositories with a focus on simplicity and extensibility.
- Add and manage git repositories
- Query commits and repositories
- Python 3.12+
- uv 0.7.20+
# Clone the repo
git clone https://github.com/your-org/orangejuice.git
cd orangejuice
# Install dependencies
uv install --devpython main.py --helppython main.py repos create my-repo --path ./data
python main.py repos lssrc
├── app # CLI (Click)
│ ├── repos
│ │ ├── repo.py # CLI subcommands & DuckDB client
│ │ ├── repos.py
│ │ ├── responses.py
│ ├── commits
│ ├── embeddings
│ ├── config.py
│ ├── container.py
├── core # Business logic (operations & queries)
│ ├── commits
│ │ ├── operations/
│ │ ├── queries/
│ ├── repos
│ │ ├── operations/
│ │ ├── queries/
│ │ ├── errors.py
├── entities # Inner-level entities/models
│ ├── base.py
│ ├── commits.py
│ ├── repos.py
├── libs # Library interfaces (DuckDB, ChromaDB, etc.)
│ ├── duckdb
│ │ ├── provider.py
│ ├── chromadb
│ │ ├── base.py
│ │ ├── providers.py
│ ├── embeddings
│ │ ├── provider.py
│ ├── git
│ │ ├── service.py
Pull requests and issues are welcome! Please follow the Code of Conduct and Contributing Guide.
MIT