You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
56 lines
1.4 KiB
56 lines
1.4 KiB
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 = { |
|
{ "<leader>ac", "<cmd>CodeCompanionChat Toggle<cr>", mode = { "n", "v" }, desc = "AI Chat" }, |
|
{ "<leader>aa", "<cmd>CodeCompanionActions<cr>", mode = { "n", "v" }, desc = "CodeCompanion Actions" }, |
|
{ "<leader>as", "<cmd>CodeCompanionChat Add<cr>", mode = "v", desc = "Add Selection to Chat" }, |
|
}, |
|
}
|
|
|