I use Neovim with copilot.lua and CopilotChat.nvim. My understanding is the copilot.lua is a lua port of an “official” copilot plugin, and CopilotChat.nvim, and other assistant-like plugins are community efforts to provide Cursor-like features in Neovim.
My experience is that the copilot in-line plugin is very smooth, and massively helpful, and CopilotChat.nvim while very neat, is a bit rough around the edges. I’ve heard similar things about Avante.nvim and others.
It seems also that a lot of (probably ex VS-code) developers are jumping to Cursor for its AI features. I haven’t used Cursor personally, but its AI feature set seems very well integrated.
I’m reluctant to commit too much time into configuring Neovim AI plugins that may be superseded in the near-term. I’m curious to know what other people think. The tooling around AI seems to be developing at a much faster rate outside of Neovim than within it.
Are there any polished AI assistants that currently exist? Are there any on the horizon?
I am commenting to concur with your question. I am using nvim + llm on browser so far. The only tool I use is my plugin nvim-copy which allows me to efficiently copy context to provide to LLM. I have not been satisfied neither by IDEs like Cursor and Trae, nor by their counterpart nvim plugins.
There are two things I fear will slow down AI integration into nvim:
Trying to force nvim to behave like cursor which it won’t
The belief that the nvim spirit and AI assisted development are inherently mismatching
I am really looking forward to a plugin or separate TUI that comes from a terminal oriented perspective. The Claude code demos are the closes thing I’ve seen to an experience I can be excited about so far.
Avante seemed very polished, if very IDE-like, but I couldn’t get all its features working - most notably I couldn’t apply changes from the chat window to the buffer. I found a GitHub issue with people facing the same problem.
I really like CodeCompanion. And I’m using it now. It’s very configurable, and I use it as a floating chat window that I can quickly toggle. It feels very neovim-y. I like this mode of working, because 90% of the time I am just staring at the buffer I am editing, but I can quickly bring up the AI assistant if need to. I use it to ask questions, request edits to my buffer, and to write docstrings and unit tests. I haven’t explored its more advanced features (agents, workflows etc…), but they seem to have a pretty neat interface. It is modelled on Zed AI (which I haven’t tried). The documentation is really amazing, and the author is responsive and helpful.
CopilotChat is similar to CodeCompanion, but I found the documentation worse, there to be fewer features, and for it to be a little less polished.
I’m still pretty curious to see where AI integration in neovim goes, but for now I’m reasonably satisfied with CodeCompanion.
I’ve been using a combo of copilot.vim (only enabled with key command) and gp.nvim and I like the targeted way I can use them to my advantage. No autocomplete, just sending snippets or starting chats. If I want to go full agent I use Roo Code or Aider.