VectorCode
by Davidyz
VectorCode is a code repository indexing tool that helps you write better prompts for coding LLMs. It indexes and provides information about the code repository you're working on.
Last updated: N/A
What is VectorCode?
VectorCode is a tool designed to enhance the capabilities of Large Language Models (LLMs) when working with code repositories. It indexes the code, providing context to the LLM for more accurate and relevant code completion and suggestions.
How to use VectorCode?
VectorCode can be used as a command-line tool or as a Neovim plugin. The CLI documentation provides instructions for setting up and using the command-line tool, while the Neovim plugin documentation details the setup for Neovim users. The tool vectorizes your code and stores it in a vector database, which is then queried by the LLM to provide context-aware suggestions.
Key features of VectorCode
Code repository indexing
RAG (Retrieval-Augmented Generation) for LLMs
CLI tool
Neovim plugin
Chunking support
Respects .gitignore
Project root detection
Use cases of VectorCode
Improving code completion accuracy with LLMs
Providing context to LLMs for closed-source or less-known projects
Generating more relevant code suggestions
Assisting with code understanding and navigation
Integrating with AI completion and chat plugins
FAQ from VectorCode
What vector database does VectorCode use?
What vector database does VectorCode use?
VectorCode uses ChromaDB as its vector database backend.
Which embedding engines are supported?
Which embedding engines are supported?
While developed using SentenceTransformer, ChromaDB supports multiple embedding engines. Users are encouraged to report issues with other embedding functions.
How do I contribute to VectorCode?
How do I contribute to VectorCode?
Refer to the contribution guide for basic guidelines and helpful tips.
Does VectorCode respect .gitignore?
Does VectorCode respect .gitignore?
Yes, VectorCode respects the .gitignore file to exclude specified files and directories from indexing.
How does VectorCode detect the project root?
How does VectorCode detect the project root?
VectorCode uses project-level .vectorcode/
and .git
directories as root anchors for automatic project-root detection.