gitmyhub

chilljinn.nvim

Rust ★ 4 updated 16d ago

A local AI autocomplete engine for Neovim

A local, offline AI autocomplete plugin for Neovim that reads your project's real code structure to suggest context-aware, non-hallucinated completions.

RustNeovimQwen2.5-CoderSQLitenvim-cmptree-sittersetup: hardcomplexity 4/5

chilljinn.nvim is a plugin for the Neovim text editor that adds AI code autocomplete, but it runs entirely on your own machine instead of calling out to a cloud service. It uses a local AI model called Qwen2.5-Coder, and there is no telemetry and no internet connection needed once it is set up.

What makes it different from a plain autocomplete tool is that it tries to be context aware. As you type, it looks at the real function and variable signatures from your own project, its dependencies, and the programming language's standard library, and feeds that into the model. It also constrains what the model is allowed to generate so it cannot invent a function or variable name that does not actually exist in your code.

Under the hood, the plugin is built in Rust. A background process runs the AI model and fills a fast in-memory lookup structure that Neovim's completion system reads from, so the editor itself never freezes while suggestions are generated. Everything the plugin needs to remember between sessions, including the downloaded model and its own settings, is stored in a single local database file.

Getting started means cloning the plugin into Neovim's plugin folder, running a small Python setup script to download the AI model, and then compiling the Rust code with an optional flag for GPU support through Vulkan or CUDA, or plain CPU if you skip that. Once installed, you turn it on inside a project with a start command, which loads the model and scans your code, and turn it off again with a stop command. The plugin can also learn your personal coding style: you can tell it to remember snippets of code you like, then ask it to turn those into a short set of style rules that shape future suggestions.

There is also a companion tool called cj-shell, a small terminal you run your builds and programs inside. It reads the error messages from compilers and debuggers and feeds them back to the plugin so it can suggest fixes right on the line that caused the problem.

No license information is given in the README.

Where it fits