Installation
IMPORTANT
The plugin requires the markdown Tree-sitter parser to be installed with :TSInstall markdown
Requirements
- The
curl
library - Neovim 0.10.0 or greater
- (Optional) An API key for your chosen LLM
Installation
The plugin can be installed with the plugin manager of your choice:
Lazy.nvim
{
"olimorris/codecompanion.nvim",
opts = {},
dependencies = {
"nvim-lua/plenary.nvim",
"nvim-treesitter/nvim-treesitter",
},
},
Packer
use({
"olimorris/codecompanion.nvim",
config = function()
require("codecompanion").setup()
end,
requires = {
"nvim-lua/plenary.nvim",
"nvim-treesitter/nvim-treesitter",
}
}),
vim-plug
call plug#begin()
Plug 'nvim-lua/plenary.nvim'
Plug 'nvim-treesitter/nvim-treesitter'
Plug 'olimorris/codecompanion.nvim'
call plug#end()
lua << EOF
require("codecompanion").setup()
EOF
Pinned plugins
As per #377, if you pin your plugins to the latest releases, ensure you set plenary.nvim to follow the master branch:
{ "nvim-lua/plenary.nvim", branch = "master" },
Completion
Out of the box, the plugin supports completion with both nvim-cmp and blink.cmp. For the latter, on version <= 0.10.0, ensure that you've added codecompanion
as a source:
sources = {
per_filetype = {
codecompanion = { "codecompanion" },
}
},
The plugin also supports native completion.
Help
If you're having trouble installing the plugin, as a first step, run :checkhealth codecompanion
to check that plugin is installed correctly. After that, consider using the minimal.lua file to troubleshoot, running it with nvim --clean -u minimal.lua
.