78 lines
1.5 KiB
Lua
78 lines
1.5 KiB
Lua
return {
|
|
"olimorris/codecompanion.nvim",
|
|
dependencies = {
|
|
"nvim-lua/plenary.nvim",
|
|
"nvim-treesitter/nvim-treesitter",
|
|
{
|
|
"zbirenbaum/copilot.lua",
|
|
cmd = "Copilot",
|
|
event = "InsertEnter",
|
|
config = function()
|
|
require("copilot").setup({
|
|
suggestion = { enabled = false },
|
|
panel = { enabled = false },
|
|
})
|
|
end,
|
|
},
|
|
"hrsh7th/nvim-cmp", -- Optional: For using slash commands and variables in the chat buffer
|
|
"nvim-telescope/telescope.nvim", -- Optional: For using slash commands
|
|
{ "stevearc/dressing.nvim", opts = {} }, -- Optional: Improves `vim.ui.select`
|
|
},
|
|
opts = {
|
|
strategies = {
|
|
chat = {
|
|
adapter = "copilot",
|
|
},
|
|
inline = {
|
|
adapter = "copilot",
|
|
},
|
|
agent = { adapter = "copilot" },
|
|
},
|
|
display = {
|
|
action_palette = {
|
|
prompt = " "
|
|
}
|
|
}
|
|
},
|
|
keys = {
|
|
{
|
|
"<leader>at",
|
|
function()
|
|
require("codecompanion").toggle()
|
|
end,
|
|
desc = "Toggle AI chat",
|
|
mode = { "n", "v" }
|
|
},
|
|
{
|
|
"<leader>aa",
|
|
"<CMD>CodeCompanion<CR>",
|
|
desc = "Run an inline prompt",
|
|
mode = { "n", "v" }
|
|
},
|
|
{
|
|
"<leader>aA",
|
|
function()
|
|
require("codecompanion").actions()
|
|
end,
|
|
desc = "Open AI actions",
|
|
mode = { "n", "v" }
|
|
},
|
|
{
|
|
"<leader>av",
|
|
function()
|
|
require("codecompanion").add()
|
|
end,
|
|
desc = "Add visual selection to chat",
|
|
mode = "v"
|
|
},
|
|
{
|
|
"<leader>ae",
|
|
function()
|
|
require("codecompanion").prompt("explain")
|
|
end,
|
|
desc = "Explain code",
|
|
mode = "v"
|
|
},
|
|
}
|
|
}
|
|
|