return { "olimorris/codecompanion.nvim", enabled = function() return true -- return vim.env.CORTECS_API_KEY ~= nil and vim.env.CORTECS_API_KEY ~= "" end, dependencies = { "nvim-lua/plenary.nvim", "nvim-treesitter/nvim-treesitter", }, opts = { adapters = { acp = { opencode = "opencode", }, http = { cortecs = function() return require("codecompanion.adapters").extend("openai_compatible", { env = { api_key = "cmd:grep CORTECS_API_KEY ~/.config/nvim/.env | cut -d '=' -f2- | tr -d '\"'", url = "https://api.cortecs.ai", }, schema = { model = { default = "glm-5.3", }, }, }) end, }, }, interactions = { chat = { adapter = "opencode", handler = "confirm_handler", }, inline = { adapter = "cortecs", handler = "confirm_handler", }, cmd = { adapter = "cortecs", handler = "confirm_handler", }, }, }, keys = { { "ac", "CodeCompanionChat Toggle", mode = { "n", "v" }, desc = "AI Chat" }, { "aa", "CodeCompanionActions", mode = { "n", "v" }, desc = "CodeCompanion Actions" }, { "as", "CodeCompanionChat Add", mode = "v", desc = "Add Selection to Chat" }, }, }