Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
91 changes: 90 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,91 @@
# go-ai-coder
Produced via TAB: Next-gen AI Coding Assistant

Enterprise AI coding assistant with local LLM inference, GitHub integration, and NVIDIA CUDA acceleration.

![Go](https://img.shields.io/badge/Go-1.22-00add8?logo=go)
![Ollama](https://img.shields.io/badge/Ollama-llama.cpp-000?logo=ollama)
![CUDA](https://img.shields.io/badge/CUDA-12.0-76b900?logo=nvidia)
![GitHub](https://img.shields.io/badge/GitHub-API-181717?logo=github)

## Overview

go-ai-coder is an enterprise-grade AI coding assistant built in Go. It runs entirely on-premises with local LLM inference via Ollama and llama.cpp, accelerated by NVIDIA GPUs. It integrates with GitHub for repository analysis, pull request automation, and code suggestions.

## Key Features

- **Local-First Architecture**: All inference runs on-premises — no data leaves your infrastructure
- **NVIDIA CUDA Acceleration**: Optimized GPU memory management and context window handling
- **GitHub Integration**: Repository cloning, PR automation, code review assistance
- **Web Scraping**: Documentation and reference fetching for context-aware suggestions
- **Context Management**: Smart context window optimization for large codebases
- **Multi-Model Support**: Works with Llama, Mistral, CodeLlama, and other Ollama models

## Tech Stack

- **Language**: Go 1.22+
- **AI Inference**: Ollama, llama.cpp, NVIDIA CUDA
- **GitHub**: REST API v3, webhooks, OAuth apps
- **Scraping**: Colly, goquery for documentation fetching
- **CLI**: Cobra for command-line interface
- **Configuration**: YAML-based config files, environment variables

## Quick Start

```bash
# Clone the repository
git clone https://github.com/BoozeLee/go-ai-coder.git
cd go-ai-coder

# Install dependencies
go mod download

# Build the binary
go build -o go-ai-coder ./cmd/go-ai-coder

# Install Ollama and pull a code model
curl -fsSL https://ollama.com/install.sh | sh
ollama pull codellama:13b-instruct

# Configure GitHub token
export GITHUB_TOKEN=your_token_here

# Run the assistant
./go-ai-coder analyze ./your-repo
```

## GPU Benchmarks

Tested on NVIDIA GTX 1080 (8GB VRAM):

| Model | VRAM Usage | Tokens/sec | Context Window |
|-------|-----------|------------|----------------|
| CodeLlama 7B | ~5.2 GB | ~45 tok/s | 4K |
| CodeLlama 13B | ~7.8 GB | ~28 tok/s | 4K |
| Mistral 7B | ~4.8 GB | ~52 tok/s | 8K |

## Architecture

```
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ GitHub │────▶│ Code │────▶│ Ollama │
│ Integration │ │ Analyzer │ │ Inference │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│ │ │
▼ ▼ ▼
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Web │ │ Context │ │ Response │
│ Scraper │ │ Manager │ │ Formatter │
└─────────────────┘ └─────────────────┘ └─────────────────┘
```

## Contributing

See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.

## License

MIT — see [LICENSE](LICENSE) for details.

## Contact

**Kiliaan Vanvoorden** — [bakerstreetbandit@zohomail.eu](mailto:bakerstreetbandit@zohomail.eu)