return { { "zbirenbaum/copilot.lua", cmd = "Copilot", keys = { { 'M-\\', 'Copilot panel', noremap = true, desc = 'Copilot panel' } }, opts = { panel = { enabled = true, keymap = { accept = "ga" } }, suggestion = { enabled = true, auto_trigger = true, keymap = { accept = "", next = "", dismiss = "", }, }, completion = { documentation = { auto_show = true, }, list = { selection = { preselect = false, auto_insert = true, } }, accept = { auto_brackets = { enabled = true } }, }, filetypes = { go = true, lua = true, php = true, python = true, ruby = true, sh = true, puppet = true, yaml = true, markdown = true, ["."] = false, } } }, { "olimorris/codecompanion.nvim", cmd = "Copilot", dependencies = { "nvim-lua/plenary.nvim", "nvim-treesitter/nvim-treesitter", "zbirenbaum/copilot.lua", }, opts = { -- adapters = { -- copilot = function() -- return require("codecompanion.adapters").extend("copilot", { -- schema = { -- model = { -- default = "claude-3.5-sonnet" -- }, -- }, -- }) -- end -- }, strategies = { chat = { adapter = "copilot", }, inline = { adapter = "copilot", }, }, }, init = function() vim.api.nvim_create_user_command('CC', ':CodeCompanion', {}) end, keys = { { 'ac', 'CodeCompanionChat Toggle', noremap = true, desc = 'Copilot chat toggle' }, { 'as', 'CodeCompanionChat Add', noremap = true, desc = 'Copilot chat add selection' }, { 'aa', 'CodeCompanionActions', noremap = true, desc = 'Copilot inline' } } }, }