Skip to content

🔍 Codebase Indexing for AI programming assistant.: semantic search, call graph analysis, multi-language support.

License

Notifications You must be signed in to change notification settings

zgsm-ai/codebase-indexer

Repository files navigation

codebase-indexer

English | 简体中文

A powerful code indexing context retrieval service for AI programming assistants.

Go Report Card Go Reference License

Overview

codebase-indexer is the context module of ZGSM (ZhuGe Smart Mind) AI Programming Assistant which running on backend. It provides powerful codebase indexing capabilities to support semantic search and code call graph relationship retrieval for RAG (Retrieval-Augmented Generation) systems.

Key Features

  • 🔍 Semantic code search with embeddings
  • 📊 Code call graph analysis and retrieval
  • 🌐 Multi-language support

Requirements

  • Go 1.24.3 or higher
  • Docker
  • PostgreSQL
  • Redis

Quick Start

Installation

# Clone the repository
git clone https://github.com/zgsm-ai/codebase-indexer.git
cd codebase-indexer

# Install dependencies
go mod tidy

Configuration

  1. Set up PostgreSQL 、 Redis、vector, etc.
vim etc/config.yaml
  1. Update the configuration with your database and Redis credentials

Running

# Build the project
make build

Architecture

The system consists of several key components:

  • Parser: Code parsing and AST generation
  • Embedding: Code semantic vector generation
  • CodeGraph: Code relationship graph construction
  • Store: Data storage and indexing
  • API: RESTful service interface

License

This project is licensed under the Apache 2.0 License.

Acknowledgments

This project builds upon the excellent work of:

  • Sourcegraph - For their pioneering work in code intelligence
  • Tree-sitter - For providing robust parsing capabilities

About

🔍 Codebase Indexing for AI programming assistant.: semantic search, call graph analysis, multi-language support.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •