return { { "olimorris/codecompanion.nvim", dependencies = { "nvim-lua/plenary.nvim", "nvim-treesitter/nvim-treesitter", }, opts = {}, keys = { { "aa", "CodeCompanionChat", mode = { "n", "v" }, desc = "Toggle Chat" }, { "ap", function() local mode = vim.api.nvim_get_mode().mode vim.ui.input({ prompt = "AI Prompt: " }, function(input) if not input or input == "" then return end if mode:match("[vV]") then vim.cmd("'<,'>CodeCompanion " .. input) else vim.cmd("CodeCompanion #{buffer} " .. input) end end) end, mode = { "n", "v" }, desc = "AI Prompt", }, }, }, }