AstroVimConfig/lua/plugins/codecompanion.lua

52 lines
1.4 KiB
Lua
Raw Normal View History

2026-04-04 15:48:59 +00:00
--if true then return {} end
return {
"olimorris/codecompanion.nvim",
opts = function(_, opts)
opts = opts or {}
-- Wir bauen die Struktur EXAKT wie in deinem Doku-Beispiel
opts.adapters = {
-- Die Ebene 'http' ist hier der entscheidende Container
http = {
my_imac = function()
return require("codecompanion.adapters").extend("openai_compatible", {
env = {
url = os.getenv "LOCAL_LLM", -- Dein lokaler iMac Port
api_key = "local-not-needed",
},
schema = {
model = {
default = "qwen2.5-7b-coder",
},
},
})
end,
my_gemini = function()
return require("codecompanion.adapters").extend("gemini", {
env = {
-- Ersetze dies durch deinen echten API Key oder nutze eine Umgebungsvariable
api_key = os.getenv "GEMENI_API_KEY",
},
schema = {
model = {
default = "gemini-1.5-pro", -- oder "gemini-1.5-flash"
},
},
})
end,
},
}
-- Jetzt sagen wir den Strategien, wo sie suchen sollen:
-- Der Pfad ist intern nun "http.my_imac"
opts.strategies = {
chat = { adapter = nil },
inline = { adapter = nil },
agent = { adapter = nil },
}
return opts
end,
}