53 lines
1.7 KiB
Lua
53 lines
1.7 KiB
Lua
return {
|
|
'olimorris/codecompanion.nvim',
|
|
dependencies = {
|
|
'nvim-lua/plenary.nvim',
|
|
'nvim-treesitter/nvim-treesitter',
|
|
'saghen/blink.cmp',
|
|
},
|
|
cmd = { 'CodeCompanion', 'CodeCompanionChat', 'CodeCompanionActions' },
|
|
keys = {
|
|
{ '<leader>a', '<cmd>CodeCompanionActions<cr>', mode = { 'n', 'v' }, desc = 'CodeCompanion Actions' },
|
|
{ '<leader>ac', '<cmd>CodeCompanionChat Toggle<cr>', mode = { 'n', 'v' }, desc = 'CodeCompanion Chat' },
|
|
{ 'ga', '<cmd>CodeCompanionChat Add<cr>', mode = 'v', desc = 'Add to CodeCompanion Chat' },
|
|
},
|
|
opts = {
|
|
log_level = 'DEBUG',
|
|
adapters = {
|
|
local_model = function()
|
|
return require('codecompanion.adapters').extend('openai_compatible', {
|
|
env = {
|
|
url = 'http://localhost:8000/api/v1/chat/completions',
|
|
api_key = 'dummy-key',
|
|
},
|
|
schema = {
|
|
model = { default = '' },
|
|
temperature = { default = 0.3 },
|
|
},
|
|
})
|
|
end,
|
|
mistral = function()
|
|
return require('codecompanion.adapters').extend('mistral', {
|
|
url = 'https://codestral.mistral.ai/v1/chat/completions',
|
|
env = {
|
|
api_key = 'cmd:echo $MISTRAL_API_KEY',
|
|
},
|
|
schema = {
|
|
model = { default = 'codestral-latest' },
|
|
},
|
|
})
|
|
end,
|
|
ollama = function()
|
|
return require('codecompanion.adapters').extend('ollama', {
|
|
schema = {
|
|
model = { default = 'qwen2.5-coder:latest' },
|
|
},
|
|
})
|
|
end,
|
|
},
|
|
strategies = {
|
|
chat = { adapter = 'anthropic' },
|
|
inline = { adapter = 'anthropic' },
|
|
},
|
|
},
|
|
}
|