VectorCode logo

VectorCode

Davidyz/VectorCode

A code repository indexing tool to supercharge your LLM experience

GraphCanon updated 3d · GitHub synced 3d

872 stars49 forksLast push 6mo Python MIT

Decision brief

VectorCode, with its embedding techniques for code indexing, targets Python users enhancing LLM experiences through retrieval-augmented technology under an MIT license.

Good fit when

  • For Python enthusiasts who need to enhance their Large Language Model (LLM) interactions by indexing large code repositories using embedding and retrieval methods.
  • If you are working with retrieval-augmented generation (RAG) models, VectorCode can support your workflow by improving the speed and relevance of model responses.

Avoid when

  • Avoid when project needs are outside Python or if you do not require advanced embeddings for code interaction.
  • Do not use when a simpler search-and-retrieve mechanism suffices over complex embedding techniques, as VectorCode adds overhead without substantial benefit in those cases.

Observed Jul 14, 2026 · Source: enrich:decision_facts

Verify the decision

Maintenance and security

Full trust report
Maintenance
Slowing (180d since push)
As of 3d
Provenance
Not a fork · Personal account
As of 3d
Security (OSV)
No MCP manifest
As of 1mo

Public GitHub metadata and optional OSV scans. Signals, not a guarantee. Trust methodology.

Install

pip install VectorCode
PyPI

Similar tools

Same-category neighbours. No typed graph edges are catalogued for this tool yet.

Evidence and technical details

Sourced facts, taxonomy, compatibility claims, README excerpt, and machine-readable endpoints.

Overview

VectorCode is a Python-based project focusing on embedding and retrieval-augmented techniques for enhancing LLM experiences through code repository indexing.

Capability facts

CLI
CLI entrypoint

Source: pyproject.toml:[project.scripts] · Aug 22, 2026

Languages
python

Source: github.language+pyproject.toml · Aug 22, 2026

Categories

Tags

README

VectorCode

VectorCode is a code repository indexing tool. It helps you build better prompt for your coding LLMs by indexing and providing information about the code repository you're working on. This repository also contains the corresponding neovim plugin that provides a set of APIs for you to build or enhance AI plugins, and integrations for some of the popular plugins.

[!NOTE] This project is in beta quality and is undergoing rapid iterations. I know there are plenty of rooms for improvements, and any help is welcomed.

  • Why VectorCode?
  • Documentation
    • About Versioning
  • TODOs
  • Credit
    • Special Thanks
  • Star History

Why VectorCode?

LLMs usually have very limited understanding about close-source projects, projects that are not well-known, and cutting edge developments that have not made it into releases. Their capabilities on these projects are quite limited. With VectorCode, you can easily (and programmatically) inject task-relevant context from the project into the prompt. This significantly improves the quality of the model output and reduce hallucination.

Documentation

[!NOTE] The documentation on the main branch reflects the code on the latest commit. To check for the documentation for the version you're using, you can check out the corresponding tags.

  • For the setup and usage of the command-line tool, see the CLI documentation;
  • For neovim users, after you've gone through the CLI documentation, please refer to the neovim plugin documentation (and optionally the lua API reference) for further instructions.
  • Additional resources:
    • the wiki for extra tricks and tips that will help you get the most out of VectorCode;
    • the discussions where you can ask general questions and share your cool usages about VectorCode.
    • If you're feeling adanvturous, feel free to check out the pull requests for WIP features.

If you're trying to contribute to this project, take a look at the contribution guide, which contains information about some basic guidelines that you should follow and tips that you may find helpful.

About Versioning

This project follows an adapted semantic versioning:

  • Until 1.0.0 is released, the major version number stays 0 which indicates that this project is still in early stage, and features/interfaces may change from time to time;
  • The minor version number indicates breaking changes. When I decide to remove a feature/config option, the actual removal will happen when I bump the minor version number. Therefore, if you want to avoid breaking a working setup, you may choose to use a version constraint like "vectorcode<0.7.0";
  • The patch version number indicates non-breaking changes. This can include new features and bug fixes. When I decide to deprecate things, I will make a new release with bumped patch version. Until the minor version number is bumped, the deprecated feature will still work but you'll see a warning. It's recommended to update your setup to adapt the new features.

TODOs

  • query by file path excluded paths;
  • chunking support;
    • add metadata for files;
    • chunk-size configuration;
    • smarter chunking (semantics/syntax based), implemented with py-tree-sitter and tree-sitter-language-pack;
    • configurable document selection from query results.
  • ~NeoVim Lua API with cache to skip the retrieval when a project has not been

For agents

This page has a .md twin and JSON over the API.

Was this helpful?

Anonymous feedback helps us improve pages and translations.