Skip to content

A Generative AI Assistant with advance agentic capabilities. Codebuddy uses machine learning to generate code, complete tasks, and streamline coding tasks workflow.

License

Notifications You must be signed in to change notification settings

olasunkanmi-SE/codebuddy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

CodeBuddy: AI-Powered Coding Assistant

Version Downloads Rating

CodeBuddy is a revolutionary Visual Studio Code extension that transforms your development workflow with AI-powered assistance.

✨ What's New in v3.4.8

πŸš€ Enhanced Vector Database - Advanced semantic search with LanceDB integration
πŸ“š Smart Context Extraction - Intelligent context retrieval for AI responses
πŸ” Improved Prompt Engineering - Sophisticated prompt building for better AI responses
πŸ€– Production-Ready Performance - Optimized memory usage and faster response times
πŸ’‘ Advanced Embedding Service - Better code understanding with intelligent chunking
�️ Enhanced Error Handling - Robust fallback mechanisms and better diagnostics

🌟 Support the Project

If CodeBuddy enhances your development workflow:

  • ⭐ Star the repository
  • πŸ“ Leave a review on the VS Code Marketplace
  • πŸ› Report bugs or suggest features
  • 🀝 Contribute to the codebase
  • πŸ’¬ Share with fellow developers

🎯 Core Features

🧠 AI-Powered Code Assistance

  • Multiple AI Models: Choose from Gemini, Anthropic Claude, Groq, Deepseek, and XGrok
  • Intelligent Code Review: Deep analysis of code quality, security, and best practices
  • Smart Refactoring: Context-aware code improvements and restructuring
  • Performance Optimization: AI-driven suggestions for better performance
  • Bug Detection & Fixes: Automatic error detection with intelligent fix suggestions
  • Vector Database Integration: Semantic search across your entire codebase

πŸ’« Context-Aware Code Completion

  • Inline Suggestions: Copilot-style grey text completions as you type
  • Pattern Learning: Learns from your codebase to suggest relevant completions
  • Function Signatures: Smart parameter suggestions based on your patterns
  • Variable Naming: Intelligent variable name suggestions following your conventions
  • Block Completion: Auto-completes common code structures (if/for/try blocks)

πŸ“š Intelligent Documentation Generator

  • Comprehensive README: Auto-generates professional README.md files
  • API Documentation: Extracts and documents REST endpoints automatically
  • Architecture Analysis: Creates Mermaid diagrams and architectural overviews
  • Component Documentation: Documents classes, interfaces, and modules
  • Smart Analysis: Understands project structure and generates relevant docs

πŸ” Deep Codebase Understanding

  • Vector-Powered Search: LanceDB integration for semantic code search and retrieval
  • Smart Context Extraction: Intelligent context selection for AI conversations
  • Architectural Recommendations: Suggests improvements based on your project structure
  • Framework Detection: Identifies and analyzes technologies in use
  • Pattern Recognition: Understands your coding patterns and conventions
  • Context-Aware Q&A: Answer questions about your specific codebase with precise context
  • Fallback Mechanisms: Robust search with multiple strategies for maximum reliability

πŸ’¬ Interactive Chat Interface

  • Modern React UI: Beautiful, responsive chat interface with enhanced UX
  • Smart Context Integration: Automatic semantic context inclusion in conversations
  • File Upload: Support for various file formats (PDF, DOCX, CSV, JSON, TXT)
  • Advanced Syntax Highlighting: Code blocks with proper language detection
  • Customizable Themes: Multiple chat themes to match your preferences
  • Enhanced Prompt Engineering: Sophisticated prompt building for optimal AI responses
  • Performance Monitoring: Real-time performance metrics and diagnostics

πŸš€ Quick Start

Installation

  1. Open VS Code
  2. Go to Extensions (Ctrl+Shift+X)
  3. Search for "CodeBuddy"
  4. Click Install

Setup

  1. Select AI Model: Choose your preferred AI provider in VS Code settings
  2. Add API Key: Configure your API key for the chosen model
  3. Start Coding: CodeBuddy is now ready to assist!

Getting Your API Keys

πŸ“‹ How to Use

Right-Click Context Menu

Right-click on selected code to access these features:

  • πŸ’­ Add Comments - Intelligent code documentation
  • πŸ” Review Code - Comprehensive code analysis
  • πŸ”„ Refactor Code - Smart code improvements
  • ⚑ Optimize Code - Performance enhancements
  • πŸ’¬ Explain Code - Clear explanations of complex logic
  • πŸ“ Generate Commit Message - Smart Git commit messages
  • πŸ’« Inline Chat - Context-aware code discussions
  • πŸ“š Interview Questions - Technical interview preparation
  • πŸ“Š Generate Diagram - Mermaid diagram creation
  • πŸ—οΈ Analyze Codebase - Deep architectural analysis

Command Palette

Access additional features via Ctrl+Shift+P:

  • CodeBuddy: Generate Documentation - Create comprehensive docs
  • CodeBuddy: Show Vector Database Statistics - View indexing and search stats
  • CodeBuddy: Force Full Reindex - Rebuild vector database index
  • CodeBuddy: Show Indexing Status - Check current indexing progress
  • CodeBuddy: Vector Database Diagnostic - Run comprehensive diagnostics
  • CodeBuddy: Show Performance Report - View performance metrics
  • CodeBuddy: Clear Vector Cache - Reset vector database cache
  • CodeBuddy: Emergency Stop - Stop all background operations
  • CodeBuddy: Optimize Performance - Run performance optimizations

Chat Interface

Click the CodeBuddy icon in the Activity Bar to open the interactive chat:

  • Ask questions about your code
  • Upload files for analysis
  • Get architectural recommendations
  • Discuss implementation strategies

πŸ”§ Configuration

Access CodeBuddy settings in VS Code preferences:

AI Model Selection

{
  "generativeAi.option": "Gemini" // or "Groq", "Anthropic", "XGrok", "Deepseek"
}

Model-Specific Settings

{
  "google.gemini.apiKeys": "your-gemini-api-key",
  "google.gemini.model": "gemini-1.5-flash",
  "anthropic.apiKey": "your-anthropic-api-key",
  "groq.llama3.apiKey": "your-groq-api-key",
  "deepseek.apiKey": "your-deepseek-api-key"
}

UI Customization

{
  "font.family": "JetBrains Mono",
  "chatview.theme": "Atom One Dark",
  "chatview.font.size": 16
}

πŸ—οΈ Architecture

CodeBuddy follows a layered architecture pattern designed for scalability and maintainability:

Frontend Layer

  • VS Code Integration: Native VS Code commands and context menus
  • React WebView: Modern chat interface with responsive design
  • Command Palette: Rich set of developer commands

Core Application Layer

  • AI Agent Orchestration: Multi-agent system for complex tasks
  • Memory System: Persistent context and conversation management
  • Business Logic: Core application services and workflows
  • Application Interfaces: Clean contracts between layers

Service Layer

  • Vector Database Service: LanceDB integration for semantic search
  • Smart Context Extraction: Intelligent context retrieval
  • Enhanced Prompt Building: Sophisticated AI prompt engineering
  • Embedding Service: Code analysis and intelligent chunking
  • Documentation Generator: Automated documentation creation

Infrastructure Layer

  • HTTP Services: External API integrations
  • Logging System: Comprehensive logging and monitoring
  • Repository Layer: Data access and persistence
  • Local Storage: SQLite database and file system management

AI Provider Integration

  • Multiple LLM Support: Gemini, Anthropic, Groq, Deepseek, XGrok
  • Fallback Mechanisms: Robust error handling and service switching
  • Performance Optimization: Smart caching and request batching

Storage Layer

  • SQLite Database: Metadata and conversation storage
  • LanceDB Vector Database: High-performance semantic search
  • File System: Local file management and caching
  • Apache Arrow: Efficient data serialization and storage

πŸš€ Roadmap

βœ… Completed Features

  • Vector Database Integration - LanceDB-powered semantic search
  • Smart Context Extraction - Intelligent context retrieval system
  • Enhanced Prompt Engineering - Sophisticated prompt building service
  • Production Safeguards - Memory management and performance monitoring
  • Advanced Embedding Service - Intelligent code chunking and embedding
  • React Webview UI - Modern, responsive interface
  • AI Agent Orchestration - Multi-agent workflow coordination
  • Documentation Generation - Automated comprehensive docs
  • Multiple AI Models - Support for 5 different providers
  • Robust Error Handling - Fallback mechanisms and diagnostics

πŸ”œ Coming Soon

  • MCP Integration - Model Context Protocol support for enhanced tool usage
  • Agent-to-Agent Communication - Advanced multi-agent coordination
  • Local LLM Support - Ollama integration for offline usage
  • Multi-language Support - Python, Java, Go, and more language support
  • Advanced Caching - Redis support for distributed caching
  • Team Collaboration - Share contexts and documentation across teams
  • Custom Templates - Personalized documentation and code templates
  • Real-time Collaboration - Live coding assistance and pair programming

πŸ“ Repository Structure

codebuddy/
β”œβ”€β”€ src/                          # Source code
β”‚   β”œβ”€β”€ agents/                   # AI agent orchestration
β”‚   β”œβ”€β”€ commands/                 # VS Code command implementations
β”‚   β”œβ”€β”€ llms/                     # AI provider integrations
β”‚   β”œβ”€β”€ services/                 # Core business logic
β”‚   β”‚   β”œβ”€β”€ vector-database.service.ts         # Vector database integration
β”‚   β”‚   β”œβ”€β”€ smart-context-extractor.ts         # Context extraction service
β”‚   β”‚   β”œβ”€β”€ enhanced-prompt-builder.service.ts # Prompt engineering
β”‚   β”‚   β”œβ”€β”€ embedding-service.ts               # Code embedding service
β”‚   β”‚   β”œβ”€β”€ documentation-generator.service.ts # Documentation generation
β”‚   β”‚   └── codebase-understanding.service.ts  # Codebase analysis
β”‚   β”œβ”€β”€ webview-providers/        # VS Code webview providers
β”‚   β”œβ”€β”€ infrastructure/           # Infrastructure layer
β”‚   └── extension.ts              # Main extension entry point
β”œβ”€β”€ webviewUi/                    # React-based chat interface
β”œβ”€β”€ docs/                         # Documentation
└── package.json                  # Extension configuration

🀝 Contributing

We welcome contributions! Here's how to get started:

  1. Fork the repository
  2. Create a feature branch from development
  3. Install dependencies: npm install
  4. Start development: Run β†’ Start Debugging (F5)
  5. Make your changes in the new VS Code instance
  6. Test thoroughly with various scenarios
  7. Submit a pull request

Development Setup

  • Main entry point: src/extension.ts
  • React UI entry: webviewUi/src/App.tsx
  • Testing: New VS Code instance opens automatically
  • Build: npm run compile and npm run build:webview

For detailed contribution guidelines, see CONTRIBUTING.md

πŸ› οΈ Troubleshooting

Common Issues

❓ Vector database not working

  • Check if API key is properly configured for embeddings
  • Use "CodeBuddy: Vector Database Diagnostic" command
  • Try "CodeBuddy: Force Full Reindex" to rebuild the database
  • Check the output panel for detailed error messages

❓ API Key Issues

  • Verify your API key is correctly entered in VS Code settings
  • Check that you've selected the matching AI model
  • Ensure your API key has sufficient credits/quota

❓ Documentation generation fails

  • Make sure you have proper file permissions in the workspace
  • Check that your project structure is supported
  • Review the output panel for detailed error messages

❓ Performance Issues

  • Try switching to a faster AI model (Groq is typically fastest)
  • Clear the extension cache: Use "CodeBuddy: Restart" command
  • Check your internet connection stability

Getting Help

πŸ“Š Analytics & Performance

  • Bundle Size: ~8.99MB (Extension) + ~397KB (UI)
  • Supported Languages: TypeScript, JavaScript, React, Vue, Python, Java, C++, and more
  • VS Code Version: 1.78.0+
  • AI Models: 5 providers supported (Gemini, Anthropic, Groq, Deepseek, XGrok)
  • Database: SQLite for metadata, LanceDB for vector embeddings
  • Vector Database: Apache Arrow format with high-performance search
  • Memory Management: Intelligent caching and cleanup mechanisms

πŸ“„ License

MIT License - see LICENSE file for details.

🌟 Support the Project

If CodeBuddy enhances your development workflow:

  • ⭐ Star the repository
  • πŸ“ Leave a review on the VS Code Marketplace
  • πŸ› Report bugs or suggest features
  • 🀝 Contribute to the codebase
  • πŸ’¬ Share with fellow developers

Made with ❀️ by Olasunkanmi Raymond

Transform your coding experience with AI-powered assistance. Install CodeBuddy today and code smarter, not harder!

Install Now

About

A Generative AI Assistant with advance agentic capabilities. Codebuddy uses machine learning to generate code, complete tasks, and streamline coding tasks workflow.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 6

Languages