返回排行榜

olimorris/codecompanion.nvim

Luacodecompanion.olimorris.dev

✨ AI Coding, Vim Style

neovimopenaianthropicollamaplugincopilotgeminigoogle-geminillmnvimdeepseekacp
Star 增长趋势
Star
6.8k
Forks
441
周增长
Issues
0
2k4k6k
2024年1月2024年11月2025年9月2026年7月
README

CodeCompanion.nvim

A Neovim AI coding assistant for coding with LLMs (Anthropic, OpenAI, Gemini, Copilot and more) and AI agents. With built-in support for Agent Client Protocol (ACP), Model Context Protocol (MCP), and agents like Claude Code and Codex

New features are always announced here

:purple_heart: Sponsors

Thank you to the following people:

User avatar: Juan Carlos RuizUser avatar: Alexander GarciaUser avatar: Christian GröberUser avatar: KyedoUser avatar: Jay SitterUser avatar: Harrison (Harry) Cramer

If you love CodeCompanion and use it in your workflow, please consider sponsoring me

:sparkles: Features

:camera_flash: In Action

:rocket: Getting Started

Everything you need to know about CodeCompanion (installation, configuration and usage) is within the docs.

:toolbox: Troubleshooting

Before raising an issue, there are a number of steps you can take to troubleshoot a problem:

Checkhealth

Run :checkhealth codecompanion and check all dependencies are installed correctly. Also take note of the log file path.

Turn on logging

Update your config and turn debug logging on:

-- lazy.nvim
{
  "olimorris/codecompanion.nvim",
  dependencies = {
    "nvim-lua/plenary.nvim",
    "nvim-treesitter/nvim-treesitter",
  },
  opts = {
    -- NOTE: The log_level is in `opts.opts`
    opts = {
      log_level = "DEBUG", -- or "TRACE"
    },
  },
},

-- Other package managers
require("codecompanion").setup({
  opts = {
    log_level = "DEBUG", -- or "TRACE"
  }
})

and inspect the log file as per the location from the checkhealth command.

Try with a minimal.lua file

A large proportion of issues which are raised in Neovim plugins are to do with a user's own config. That's why I always ask users to fill in a minimal.lua file when they raise an issue. We can rule out their config being an issue and it allows me to recreate the problem.

For this purpose, I have included a minimal.lua file in the repository for you to test out if you're facing issues. Simply copy the file, edit it and run neovim with nvim --clean -u minimal.lua.

:gift: Contributing

I am open to contributions but they will be implemented at my discretion. Feel free to open up a discussion before embarking on a PR and please read the CONTRIBUTING.md guide.

:clap: Acknowledgements

  • Steven Arcangeli for his genius creation of the chat buffer and his feedback early on
  • Wtf.nvim for the LSP assistant action
  • CopilotChat.nvim for the rendering and usability of the chat buffer
  • Aerial.nvim for the Tree-sitter parsing which inspired the symbols Slash Command
  • Saghen for the fantastic docs inspiration from blink.cmp and continued PRs to the project
  • Catwell for the queue inspiration that I use to stack agents and tools
  • bassamsdata for the amazing insert_edit_into_file tool (the list is endless) and ongoing contributions to this project
  • ravitemer for the fantastic extensions API
  • Davidyz for his continued, excellent contributions that keep CodeCompanion going
  • Conrad Irwin, Agus Zubiaga and Morgan Krey from Zed Industries for their support in implementing ACP
  • Sidekick.nvim for the diff and terminal input inspiration
相关仓库
neovim/neovim

Vim-fork focused on extensibility and usability

Vim ScriptOtherneovimc
neovim.io
101.3k7k
junegunn/fzf

:cherry_blossom: A command-line fuzzy finder

GoGo ModulesMIT Licensefzfgo
junegunn.github.io/fzf/
81.9k2.8k
sxyazi/yazi

💥 Blazing fast terminal file manager written in Rust, based on async I/O.

Rustcrates.ioMIT Licenseasyncioconcurrency
yazi-rs.github.io
40.6k945
NvChad/NvChad

Blazing fast Neovim framework providing solid defaults and a beautiful UI, enhancing your neovim experience.

LuaGNU General Public License v3.0nvimneovim
nvchad.com
28.4k2.2k
LazyVim/LazyVim

Neovim config for the lazy

LuaApache License 2.0neovimneovim-conf
lazyvim.github.io
27k1.8k
folke/lazy.nvim

💤 A modern plugin manager for Neovim

LuaApache License 2.0neovimneovim-plugin
lazy.folke.io
21.3k585
rockerBOO/awesome-neovim

Collections of awesome neovim plugins.

ShellCreative Commons Zero v1.0 Universalnvim-luaneovim
21.2k1k
SpaceVim/SpaceVim

A modular configuration of Vim and Neovim

Vim Scriptneovimspacevim
spacevim.org
20.4k1.4k
wsdjeg/SpaceVim

A modular configuration of Vim and Neovim

Vim ScriptGNU General Public License v3.0neovimspacevim
spacevim.org
20.2k1.4k
nvim-telescope/telescope.nvim

Find, Filter, Preview, Pick. All lua, all the time.

LuaMIT Licenseneovimlua
19.6k956
LunarVim/LunarVim

🌙 LunarVim is an IDE layer for Neovim. Completely free and community driven.

LuaGNU General Public License v3.0neovimvim
lunarvim.org
19.3k1.5k
mhinz/vim-galore

:mortar_board: All things Vim!

Vim ScriptCreative Commons Attribution Share Alike 4.0 Internationalvimguide
17.9k631