SkillAgentSearch skills...

VerbalCodeAi

VerbalCodeAI is a free, open-source AI tool that simplifies codebase navigation in your terminal, using Python 3.11.6 and Ollama. It indexes projects locally and quickly answers questions like “Where’s this function?”, saving developers time on debugging and onboarding.

Install / Use

/learn @vibheksoni/VerbalCodeAi

README

VerbalCodeAI 🤖

GitHub stars GitHub forks GitHub issues GitHub license Python Version Website <a href="https://discord.gg/KpjSDEwWCF" target="_blank"> <img src="https://img.shields.io/static/v1?label=Discord&message=Join%20Us&color=7289DA&logo=discord&logoColor=white&style=for-the-badge" alt="Join our Discord"/> </a>

Join our Discord server to hang out, ask questions, or offer help! We're currently looking for assistance in setting up the server, so if you're experienced with Discord setup, your help would be greatly appreciated! Click here to join.

Ever felt lost in a complex codebase? Wish you had a smart assistant to help you navigate and understand code right in your terminal? VerbalCodeAI is here to help! This powerful AI-powered tool acts as your personal code companion, leveraging advanced embedding techniques and Large Language Model (LLM) integration. It offers intelligent code analysis, helps you search and understand your project, and provides assistance directly within your command-line interface, making your development workflow smoother and more efficient.

.       .      .          .    .--.        .           .
 \     /       |          |   :            |          / \     o
  \   /.-. .--.|.-.  .-.  |   |    .-.  .-.| .-.     /___\    .
   \ /(.-' |   |   )(   ) |   :   (   )(   |(.-'    /     \   |
    '  `--''   '`-'  `-'`-`-   `--'`-'  `-'`-`--'  '       `-' `-'
                       [AI Assistant for Code]
<div align="center"> <img src="Showcase/VerbalCodeShowcase.gif" alt="VerbalCodeAI Showcase" style="max-width: 800px; max-height: 400px; width: 100%; height: auto;"/> </div> <details> <summary><strong>Table of Contents</strong></summary> </details>
  • 🔍 Intelligent Code Search: Find relevant code snippets using natural language queries
  • 📊 Code Analysis: Get insights about your codebase structure and dependencies
  • 🤖 Agent Mode: Let the AI explore and understand your codebase using various tools
  • 💬 Chat with AI: Ask questions about your code and get detailed explanations
  • 🌐 Web Search Integration: Search the web for code-related information without leaving the terminal
  • 🧠 Memory System: The AI remembers important information about your project
  • 🔄 Version Control Integration: Analyze git history and changes
  • 📝 File Description: Generate concise descriptions of code files
  • 🛠️ Command Runner: Execute system commands with AI assistance

Getting Started

Prerequisites

  • Python 3.11.6 (tested and recommended version)
  • Ollama (for local model execution)

Note: The application has been specifically tested with Python 3.11.6 on Windows. While it may work with other versions, for the best experience, we recommend using the tested version.

Installation

Windows

  1. Clone the repository:

    git clone https://github.com/vibheksoni/VerbalCodeAi.git
    cd VerbalCodeAi
    
  2. Run the setup script:

    setup_windows.bat
    

Linux/macOS

  1. Clone the repository:

    git clone https://github.com/vibheksoni/VerbalCodeAi.git
    cd VerbalCodeAi
    
  2. Make the setup script executable and run it:

    chmod +x setup_linux.sh
    ./setup_linux.sh
    

Manual Installation

If you prefer to set up manually:

  1. Create a virtual environment:

    python -m venv venv
    
  2. Activate the virtual environment:

    • Windows: venv\Scripts\activate
    • Linux/macOS: source venv/bin/activate
  3. Install dependencies:

    pip install -r requirements.txt
    
  4. Create a .env file with your configuration (see .env.example for reference)

Usage

Starting the Application

After installation, activate your virtual environment and run:

python app.py

Indexing a Project

When you first start VerbalCodeAI, you'll be prompted to select a directory to index. This process analyzes your codebase and creates embeddings for efficient searching.

Main Menu Options

  • Chat with AI: Ask questions about your code
  • Agent Mode: Use AI with tools to explore your codebase
  • Reindex Project: Update the index after code changes
  • Project Info: View information about the indexed project
  • Settings: Configure application settings
  • Exit: Quit the application

Agent Mode Tools

Agent Mode provides access to powerful tools:

  • Search tools: embed_search, semantic_search, grep, regex_advanced_search, file_type_search
  • File tools: read_file, file_stats, directory_tree, get_file_description, get_file_metadata
  • Code analysis: find_functions, find_classes, find_usage, cross_reference, code_analysis, get_functions, get_classes, get_variables, get_imports, explain_code
  • Version control: git_history, version_control_search, search_imports
  • Project tools: get_project_description, get_instructions, create_instructions_template
  • Memory tools: add_memory, get_memories, search_memories
  • System tools: run_command, read_terminal, kill_terminal, list_terminals
  • Helper tools: ask_buddy (with context-aware second opinions)
  • Web tools: google_search, ddg_search, bing_news_search, fetch_webpage, get_base_knowledge

💡 Pro Tip: Agent Mode is the most cost-effective option when using cloud-based LLM providers. It makes fewer API calls compared to Chat Mode, which helps avoid rate limits and reduces costs. For the best experience with minimal expenses, consider using Agent Mode when working with paid API services.

HTTP API Server

VerbalCodeAI includes a built-in HTTP API server that allows you to access its functionality programmatically. This is useful for integrating VerbalCodeAI with other tools or creating custom interfaces.

To start the HTTP API server:

python app.py --serve [PORT]

Where [PORT] is the port number you want the server to listen on (default is 8000).

The server provides the following endpoints:

  • GET /api/health - Health check
  • POST /api/initialize - Initialize a directory
  • POST /api/ask - Ask the agent a question
  • POST /api/index/start - Start indexing a directory
  • GET /api/index/status - Get indexing status

Example usage with curl:

# Health check
curl http://localhost:8000/api/health

# Initialize a directory
curl -X POST http://localhost:8000/api/initialize -H "Content-Type: application/json" -d '{"directory_path": "D:/path/to/your/project"}'

# Ask a question
curl -X POST http://localhost:8000/api/ask -H "Content-Type: application/json" -d '{"question": "What does this codebase do?"}'

# Start indexing
curl -X POST http://localhost:8000/api/index/start -H "Content-Type: application/json" -d '{"directory_path": "D:/path/to/your/project"}'

# Get indexing status
curl http://localhost:8000/api/index/status

By default, the server only accepts connections from localhost (127.0.0.1). To allow connections from any IP address, set the HTTP_ALLOW_ALL_ORIGINS environment variable to TRUE in your .env file.

MCP Integration

VerbalCodeAI supports the Model Context Protocol (MCP), allowing you to connect it to Claude Desktop and other MCP-compatible AI assistants. This integration enables Claude to directly interact with your codebase, providing a powerful AI-assisted development experience.

<div align="center"> <img src="Showcase/MCP Showcase.PNG" alt="MCP Integration with Claude Desktop" style="width: 500px; height: 500px; max-width: 100%; object-fit: contain; margin: 10px;"/> <img src="Showcase/MCP Showcase 2.PNG" alt="MCP Showcase - Example 2" style="width: 500px; height: 500px; max-width: 100%; object-fit: contain; margin: 10px;"/> </div>

Setting Up the MCP Server

The MCP server wraps the HTTP API server and provides tools for Claude to interact with VerbalCodeAI.

View on GitHub
GitHub Stars58
CategoryDevelopment
Updated3h ago
Forks9

Languages

Python

Security Score

100/100

Audited on Apr 5, 2026

No findings