config/.config/nvim/lua/lazyvim/plugins/codecompanion.lua

51 lines
1.6 KiB
Lua

return {
{
"olimorris/codecompanion.nvim",
enabled = true,
lazy = false,
dependencies = {
{ "nvim-lua/plenary.nvim", branch = "master" },
"nvim-treesitter/nvim-treesitter",
"ravitemer/mcphub.nvim",
},
keys = {
{ "<leader>C", "<cmd>CodeCompanionChat<cr>", desc = "Open CodeCompanion Chat" }
},
opts = {
strategies = {
chat = { adapter = "openai" },
inline = { adapter = "openai" },
},
extensions = {
mcphub = {
callback = "mcphub.extensions.codecompanion",
opts = {
make_vars = true,
make_slash_commands = true,
show_result_in_chat = true
}
}
},
opts = {
log_level = "DEBUG",
},
adapters = {
openai = function()
return require("codecompanion.adapters").extend("openai", {
env = {
api_key = "cmd:cat $HOME/.config/openai/KEY",
},
})
end,
anthropic = function()
return require("codecompanion.adapters").extend("anthropic", {
env = {
api_key = "cmd:cat $HOME/.config/anthropic/KEY",
},
})
end,
},
},
},
}