|
1 | 1 | # CodeBuddy |
2 | 2 |
|
3 | | -An AI-powered coding assistant for Visual Studio Code featuring agentic architecture, multi-model support, local model integration, and intelligent codebase understanding. |
4 | | - |
5 | | -**CodeBuddy** is an advanced AI-powered VS Code extension featuring a **Multi-Agent System**, **Terminal Integration**, and **Local LLM Support**. It transforms your development workflow by acting as a full-fledged autonomous pair programmer that can plan, execute, test, and debug complex tasks. |
6 | | - |
7 | | -## What's New in v3.8.x |
8 | | - |
9 | | -- **Terminal Integration** - Agents can now execute shell commands (builds, tests, git) with real-time output streaming and safety guards. |
10 | | -- **Expanded Agent Team** - New specialized agents: **Architect**, **Reviewer**, and **Tester** join the existing team. |
11 | | -- **Collaboration Protocols** - Agents follow structured playbooks for New Features, Bug Fixes, and Refactoring. |
12 | | -- **Local LLM Support** - Full support for Ollama and LM Studio (OpenAI-compatible endpoints). |
13 | | -- **New Model Support** - Added support for Qwen, GLM-4, and DeepSeek-R1/V3. |
14 | | - |
15 | | -The extension supports nine AI providers including cloud-based models (Gemini, Anthropic Claude, OpenAI, Groq, DeepSeek, Qwen, GLM) and local models via Ollama, giving developers flexibility in choosing the right model for their privacy and performance requirements. |
16 | | - |
17 | | -### The Agent Team |
18 | | - |
19 | | -- **Project Manager (Main Agent)**: Orchestrates the workflow and delegates tasks. |
20 | | -- **Architect**: Designs scalable systems, selects patterns, and creates ADRs. |
21 | | -- **Reviewer**: Enforces code quality, security standards, and best practices. |
22 | | -- **Tester**: Writes and executes unit/integration tests to ensure stability. |
23 | | -- **Debugger**: Investigates root causes of errors and proposes fixes. |
24 | | -- **Code Analyzer**: Deeply scans codebase for anti-patterns and complexity. |
25 | | -- **Doc Writer**: Generates comprehensive documentation and API references. |
26 | | -- **File Organizer**: Refactors directory structures and cleans up projects. |
27 | | - |
28 | | -### Smart Context Selection |
29 | | - |
30 | | -## Core Features |
31 | | - |
32 | | -### Terminal Integration (New!) |
33 | | -CodeBuddy can now **run commands directly in your terminal**. |
34 | | -- **Execution**: Run `npm test`, `git status`, `docker build`, or any shell command. |
35 | | -- **Visibility**: Watch real-time output in the dedicated "CodeBuddy Terminal" channel. |
36 | | -- **Safety First**: Every command requires **explicit user confirmation** via a modal dialog before running. |
37 | | -- **Feedback Loop**: Agents read command output (e.g., build errors) to self-correct. |
38 | | - |
39 | | -### Collaboration Playbooks |
40 | | -Agents don't just work in isolation; they follow strict protocols: |
41 | | -1. **New Feature**: Architect designs -> Developer implements -> Tester verifies -> Reviewer approves. |
42 | | -2. **Bug Fix**: Debugger finds cause -> Developer fixes -> Tester prevents regression. |
43 | | -3. **Refactoring**: Analyzer identifies issues -> Architect plans -> File Organizer executes -> Tester validates. |
44 | | - |
45 | | -### Local LLM Privacy |
46 | | -Run completely offline with local models: |
47 | | -- **Ollama / LM Studio**: Point CodeBuddy to your local server (e.g., `http://localhost:11434/v1`). |
48 | | -- **Privacy**: Your code never leaves your machine when using local models. |
49 | | -- **Zero Cost**: No API fees when running Llama 3, Qwen, or DeepSeek locally. |
50 | | - |
51 | | -### Deep Code Understanding |
52 | | -- **RAG & Embeddings**: Vector-based search for semantic understanding of your codebase. |
53 | | -- **Hybrid Storage**: |
54 | | - - `/workspace/`: Real-time file operations. |
55 | | - - `/docs/`: Persistent long-term memory (SQLite). |
56 | | - - `/`: Ephemeral session context. |
57 | | - |
58 | | -### Model Context Protocol (Beta) |
59 | | -Connect CodeBuddy to external tools and data sources using the open standard **MCP**. |
60 | | -- **Unified Tooling**: Access database, git, and other tools through a single protocol. |
61 | | -- **Extensibility**: Add any MCP-compliant server to extend CodeBuddy's capabilities. |
62 | | -- **Future-Proof**: Ready for the next generation of AI-tool integration. |
| 3 | +CodeBuddy is an AI-powered coding assistant for Visual Studio Code featuring multi-agent architecture, nine AI provider integrations, local model support, and intelligent codebase understanding. It functions as an autonomous pair programmer capable of planning, executing, and debugging complex development tasks. |
63 | 4 |
|
64 | | ---- |
| 5 | +## Overview |
| 6 | + |
| 7 | +CodeBuddy enhances developer productivity through AI-powered code assistance, providing intelligent code review, refactoring suggestions, optimization recommendations, and interactive chat capabilities. The extension supports both cloud-based and local AI models, enabling developers to choose the right balance of capability, speed, and privacy for their workflow. |
| 8 | + |
| 9 | +## Key Features |
| 10 | + |
| 11 | +### Multi-Agent System |
| 12 | + |
| 13 | +CodeBuddy employs specialized agents that collaborate on complex tasks: |
| 14 | + |
| 15 | +- **Project Manager**: Orchestrates workflow and delegates tasks to specialized agents |
| 16 | +- **Architect**: Designs scalable systems, selects patterns, and creates architecture decision records |
| 17 | +- **Reviewer**: Enforces code quality, security standards, and best practices |
| 18 | +- **Tester**: Writes and validates unit and integration tests |
| 19 | +- **Debugger**: Investigates root causes and proposes fixes |
| 20 | +- **Code Analyzer**: Scans codebase for anti-patterns and complexity issues |
| 21 | +- **Documentation Writer**: Generates comprehensive documentation and API references |
| 22 | +- **File Organizer**: Refactors directory structures and manages project organization |
| 23 | + |
| 24 | +### Dual Operating Modes |
| 25 | + |
| 26 | +**Chat Mode**: Traditional question-and-answer interaction for quick queries, code explanations, and getting code snippets without file modifications. |
| 27 | + |
| 28 | +**Agent Mode**: Autonomous execution with full tool access including file operations, terminal commands, web search, and codebase analysis. Changes can be reviewed before application. |
| 29 | + |
| 30 | +### AI Provider Support |
| 31 | + |
| 32 | +CodeBuddy supports nine AI providers: |
| 33 | + |
| 34 | +| Provider | Default Model | Capabilities | |
| 35 | +| --------- | ----------------------- | --------------------------------- | |
| 36 | +| Gemini | gemini-2.5-pro | Long context, general coding | |
| 37 | +| Anthropic | claude-sonnet-4-5 | Complex architecture, refactoring | |
| 38 | +| OpenAI | gpt-4o | Reasoning, planning | |
| 39 | +| DeepSeek | deepseek-chat | Cost-effective coding | |
| 40 | +| Qwen | qwen-max | Strong open-weight performance | |
| 41 | +| Groq | llama-3.1-70b-versatile | Ultra-fast inference | |
| 42 | +| GLM | glm-4 | Chinese and English support | |
| 43 | +| XGrok | grok | Alternative reasoning | |
| 44 | +| Local | qwen2.5-coder | Privacy-first, offline capable | |
| 45 | + |
| 46 | +### Local Model Integration |
| 47 | + |
| 48 | +Run completely offline with local models via Ollama or LM Studio: |
| 49 | + |
| 50 | +- Full Agent mode support with local models |
| 51 | +- Zero API costs for unlimited usage |
| 52 | +- Code never leaves your machine |
| 53 | +- Supports Qwen 2.5 Coder, Llama 3.2, DeepSeek Coder, and other OpenAI-compatible models |
| 54 | + |
| 55 | +### Terminal Integration |
| 56 | + |
| 57 | +Agents can execute shell commands directly: |
| 58 | + |
| 59 | +- Run builds, tests, git operations, and any shell command |
| 60 | +- Real-time output streaming in dedicated terminal channel |
| 61 | +- Safety guards with user confirmation before execution |
| 62 | +- Feedback loop for self-correction based on command output |
| 63 | + |
| 64 | +### Diff Review System |
| 65 | + |
| 66 | +File changes made by the agent are tracked and reviewable: |
| 67 | + |
| 68 | +- Side-by-side diff viewer in VS Code |
| 69 | +- Apply or reject individual changes |
| 70 | +- Recent changes history panel |
| 71 | +- Optional approval mode requiring explicit confirmation before file writes |
| 72 | + |
| 73 | +### Model Context Protocol (MCP) |
| 74 | + |
| 75 | +Extend CodeBuddy's capabilities through the open MCP standard: |
| 76 | + |
| 77 | +- Connect external tools and data sources |
| 78 | +- Add custom MCP servers for specialized functionality |
| 79 | +- Unified protocol for AI-tool integration |
| 80 | + |
| 81 | +### Project Rules |
| 82 | + |
| 83 | +Customize agent behavior with project-specific rules: |
| 84 | + |
| 85 | +- Define coding conventions and guidelines in `.codebuddy/rules.md` |
| 86 | +- Create custom rules via the Settings UI |
| 87 | +- Toggle rules on/off without deletion |
| 88 | +- Rules are appended to the agent's system prompt |
65 | 89 |
|
66 | | -## Quick Start |
| 90 | +### Inline Completions |
67 | 91 |
|
68 | | -### Installation |
69 | | -You can install **CodeBuddy** from your preferred registry: |
70 | | -- [**VS Code Marketplace**](https://marketplace.visualstudio.com/items?itemName=fiatinnovations.ola-code-buddy) |
71 | | -- [**Open VSX Registry**](https://open-vsx.org/extension/fiatinnovations/ola-code-buddy) |
| 92 | +Ghost text suggestions as you type: |
72 | 93 |
|
73 | | -Alternatively, search for "CodeBuddy" in your editor's extension manager. |
| 94 | +- Configurable completion provider (can differ from chat provider) |
| 95 | +- Debounce and token limit controls |
| 96 | +- Manual or automatic trigger modes |
74 | 97 |
|
75 | | -### Configuration |
76 | | -Configure your preferred AI provider in VS Code Settings: |
| 98 | +### Context Management |
77 | 99 |
|
78 | | -**1. Cloud Providers (Recommended for best performance)** |
79 | | -- **Gemini**: `gemini-2.5-pro` (Great balance of speed/quality) |
80 | | -- **Anthropic**: `claude-3-5-sonnet` (Top-tier coding capability) |
81 | | -- **Groq**: `llama-3.1-70b` (Insanely fast) |
82 | | -- **DeepSeek**: `deepseek-chat` (Cost-effective) |
| 100 | +Intelligent context handling for relevant responses: |
| 101 | + |
| 102 | +- Automatic active file inclusion |
| 103 | +- @ mention syntax for adding specific files |
| 104 | +- Token budget awareness based on model limits |
| 105 | +- Semantic search over indexed codebase |
| 106 | +- Priority system: @mentioned files, active file, auto-gathered context |
| 107 | + |
| 108 | +## Installation |
| 109 | + |
| 110 | +Install from your preferred registry: |
| 111 | + |
| 112 | +- [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=fiatinnovations.ola-code-buddy) |
| 113 | +- [Open VSX Registry](https://open-vsx.org/extension/fiatinnovations/ola-code-buddy) |
| 114 | + |
| 115 | +Alternatively, search for "CodeBuddy" in the VS Code extension manager. |
| 116 | + |
| 117 | +## Configuration |
| 118 | + |
| 119 | +### Cloud Providers |
| 120 | + |
| 121 | +1. Open VS Code Settings (File > Preferences > Settings) |
| 122 | +2. Search for "CodeBuddy" |
| 123 | +3. Select your preferred AI provider from the dropdown |
| 124 | +4. Enter your API key in the appropriate field |
| 125 | + |
| 126 | +### Local Models |
| 127 | + |
| 128 | +Configure for Ollama or LM Studio: |
83 | 129 |
|
84 | | -**2. Local LLMs (Ollama/LM Studio)** |
85 | | -Set the following in your `settings.json`: |
86 | 130 | ```json |
87 | 131 | { |
88 | | - "codebuddy.local.baseUrl": "http://localhost:11434/v1", // Default for Ollama |
89 | | - "codebuddy.local.model": "qwen2.5-coder:latest", |
90 | | - "codebuddy.generativeAi.option": "Local" |
| 132 | + "generativeAi.option": "Local", |
| 133 | + "local.baseUrl": "http://localhost:11434/v1", |
| 134 | + "local.model": "qwen2.5-coder" |
91 | 135 | } |
92 | 136 | ``` |
93 | 137 |
|
94 | | ---- |
| 138 | +For Docker-based Ollama: |
| 139 | + |
| 140 | +``` |
| 141 | +docker compose -f docker-compose.yml up -d |
| 142 | +docker exec -it ollama ollama pull qwen2.5-coder |
| 143 | +``` |
95 | 144 |
|
96 | | -## Capabilities & Commands |
97 | | - |
98 | | -### Shortcuts |
99 | | -| Command | Shortcut | Description | |
100 | | -| :--- | :--- | :--- | |
101 | | -| **Inline Chat** | `Cmd+I` / `Ctrl+I` | Ask questions about selected code | |
102 | | -| **Review Code** | `Cmd+Shift+R` | Deep quality & security review | |
103 | | -| **Explain** | `Cmd+Shift+E` | Explain complex logic | |
104 | | -| **Add Tests** | `Cmd+Shift+T` | Generate unit tests | |
105 | | -| **Fix Bugs** | `Cmd+Shift+F` | Analyze and fix selected error | |
106 | | - |
107 | | -### Supported Models |
108 | | -| Provider | Models | Best For | |
109 | | -| :--- | :--- | :--- | |
110 | | -| **Anthropic** | Claude 3.5 Sonnet, Opus | Complex Architecture, Refactoring | |
111 | | -| **Gemini** | Gemini 1.5 Pro/Flash | Long Context, General Coding | |
112 | | -| **OpenAI** | GPT-4o, o1-preview | Reasoning, Planning | |
113 | | -| **DeepSeek** | DeepSeek-V3, R1 | Cost-Efficiency | |
114 | | -| **Qwen** | Qwen 2.5 Coder | Open Source Leader | |
115 | | -| **Local** | Llama 3, Mistral, etc. | Privacy, Offline | |
| 145 | +## Settings Panel |
116 | 146 |
|
117 | | ---- |
| 147 | +Access comprehensive settings via the gear icon in the sidebar: |
| 148 | + |
| 149 | +- **Account**: Profile and account information |
| 150 | +- **General**: Theme, language, font settings, nickname, streaming preferences |
| 151 | +- **Agents**: Auto-approve actions, file/terminal permissions, verbose logging |
| 152 | +- **MCP**: Model Context Protocol server management |
| 153 | +- **Conversation**: Chat display preferences and history management |
| 154 | +- **Models**: AI model selection and configuration |
| 155 | +- **Context**: Workspace indexing, context window size, file inclusion settings |
| 156 | +- **Rules and Subagents**: Custom rules and specialized agent configuration |
| 157 | +- **Privacy**: Data privacy settings and clear data options |
| 158 | +- **Beta**: Experimental features |
| 159 | +- **About**: Version information and links |
| 160 | + |
| 161 | +## Data Storage |
| 162 | + |
| 163 | +CodeBuddy stores data locally in a `.codebuddy` folder at your workspace root: |
| 164 | + |
| 165 | +- Chat history in JSON format |
| 166 | +- Codebase analysis database (SQLite) |
| 167 | +- Project rules and configuration |
| 168 | +- Logs and session data |
| 169 | + |
| 170 | +This folder is automatically added to `.gitignore` to prevent committing sensitive data. |
118 | 171 |
|
119 | 172 | ## Troubleshooting |
120 | 173 |
|
121 | | -**"Command Execution Failed"** |
122 | | -- Ensure you approved the command in the popup modal. |
123 | | -- Check the "CodeBuddy Terminal" output channel for stderr details. |
| 174 | +**Connection Issues with Local Models** |
124 | 175 |
|
125 | | -**Local LLM Connection Refused** |
126 | | -- Ensure Ollama/LM Studio is running. |
127 | | -- Verify the port (default `11434` for Ollama, `1234` for LM Studio). |
128 | | -- Check `codebuddy.local.baseUrl` setting. |
| 176 | +- Verify Ollama or LM Studio is running |
| 177 | +- Check the port configuration (default: 11434 for Ollama, 1234 for LM Studio) |
| 178 | +- Confirm the `local.baseUrl` setting matches your server |
129 | 179 |
|
130 | | -**Agent Loop / Getting Stuck** |
131 | | -- Use the "Stop" button in the chat interface. |
132 | | -- Clear context using the broom icon. |
| 180 | +**Agent Not Responding** |
133 | 181 |
|
134 | | ---- |
| 182 | +- Use the Stop button in the chat interface |
| 183 | +- Clear chat history via Settings > Privacy |
| 184 | +- Check the CodeBuddy output channel (View > Output > CodeBuddy) |
| 185 | + |
| 186 | +**API Key Errors** |
| 187 | + |
| 188 | +- Verify your API key is correctly entered in settings |
| 189 | +- Ensure the selected model matches your API key provider |
| 190 | +- Check for network connectivity for cloud providers |
135 | 191 |
|
136 | 192 | ## Contributing |
137 | | -We welcome contributions! Please see [CONTRIBUTING.md](CONTRIBUTING.md). |
| 193 | + |
| 194 | +Contributions are welcome. Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines. |
138 | 195 |
|
139 | 196 | ## License |
140 | | -MIT License - see [LICENSE](LICENSE). |
| 197 | + |
| 198 | +MIT License - see [LICENSE](LICENSE) for details. |
141 | 199 |
|
142 | 200 | --- |
143 | | -**Made with by [Olasunkanmi Raymond](https://olasunkanmi.app)** |
144 | | -_CodeBuddy: Your AI Pair Programmer._ |
| 201 | + |
| 202 | +**Repository**: [github.com/olasunkanmi-SE/codebuddy](https://github.com/olasunkanmi-SE/codebuddy) |
0 commit comments