Skip to content

✨ A Copilot Chat experience in Neovim. Supports Anthropic, Ollama and OpenAI LLMs

License

Notifications You must be signed in to change notification settings

niba/codecompanion.nvim

This branch is 182 commits behind olimorris/codecompanion.nvim:main.

Folders and files

NameName
Last commit message
Last commit date
Jan 29, 2025
Jan 30, 2025
Jul 24, 2024
Jan 30, 2025
Jan 29, 2025
Jan 25, 2025
Jan 29, 2025
Jan 28, 2025
Dec 2, 2024
Jan 29, 2025
Jan 27, 2025
Jan 1, 2025
Dec 2, 2024
Jan 29, 2025
Jan 27, 2025
Jan 5, 2025
Jan 26, 2025
Jan 20, 2025

Repository files navigation

CodeCompanion.nvim

New features are always announced here

💜 Sponsors

Thank you to the following people:

Bassam DataIvo TobyKTS CodeLuxusUser avatar: Konstantin KellerUser avatar: Carlos FlorêncioUser avatar: Adam TrepanierUser avatar: Jeff GordonUser avatar: Private Sponsor

✨ Features

  • 💬 Copilot Chat meets Zed AI, in Neovim
  • 🔌 Support for Anthropic, Copilot, DeepSeek, Gemini, Ollama, OpenAI, Azure OpenAI, HuggingFace and xAI LLMs (or bring your own!)
  • 🚀 Inline transformations, code creation and refactoring
  • 🤖 Variables, Slash Commands, Agents/Tools and Workflows to improve LLM output
  • ✨ Built in prompt library for common tasks like advice on LSP errors and code explanations
  • 🏗️ Create your own custom prompts, Variables and Slash Commands
  • 📚 Have multiple chats open at the same time
  • 💪 Async execution for fast performance

📸 Screenshots

What.s.new.in.v9.0.0.mp4

📖 Documentation

Please visit the documentation site for installation and configuration instructions.

🧰 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:

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.

🎁 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.

👏 Acknowledgements

About

✨ A Copilot Chat experience in Neovim. Supports Anthropic, Ollama and OpenAI LLMs

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Lua 97.9%
  • Scheme 1.8%
  • Other 0.3%