diff --git a/common/.config/nvim/lua/plugins/ai.lua b/common/.config/nvim/lua/plugins/ai.lua index e8ac0d85..8c421504 100644 --- a/common/.config/nvim/lua/plugins/ai.lua +++ b/common/.config/nvim/lua/plugins/ai.lua @@ -4,26 +4,7 @@ return { event = "VeryLazy", dependencies = { "stevearc/dressing.nvim", - { - "MeanderingProgrammer/render-markdown.nvim", - optional = true, - ft = function(_, ft) - vim.list_extend(ft, { "Avante" }) - return ft - end, - opts = function(_, opts) - opts.file_types = vim.list_extend(opts.file_types or {}, { "Avante" }) - end, - }, - { - "folke/which-key.nvim", - optional = true, - opts = { - spec = { - { "<leader>a", group = "ai" }, - }, - }, - }, + "ibhagwan/fzf-lua", }, init = function() local anthropic = require("lib").get_secret("anthropic") @@ -34,9 +15,56 @@ return { opts = { hints = { enabled = false }, provider = "claude", + auto_suggestions_provider = "claude", + claude = { + endpoint = "https://api.anthropic.com", + model = "claude-3-5-sonnet-20241022", + temperature = 0, + max_tokens = 4096, + }, + file_selector = { + provider = "fzf", + provider_opts = {}, + }, }, build = "make", }, + { + "saghen/blink.cmp", + lazy = true, + dependencies = { "saghen/blink.compat" }, + opts = { + sources = { + default = { "avante_commands", "avante_mentions", "avante_files" }, + compat = { + "avante_commands", + "avante_mentions", + "avante_files", + }, + -- LSP score_offset is typically 60 + providers = { + avante_commands = { + name = "avante_commands", + module = "blink.compat.source", + score_offset = 90, + opts = {}, + }, + avante_files = { + name = "avante_files", + module = "blink.compat.source", + score_offset = 100, + opts = {}, + }, + avante_mentions = { + name = "avante_mentions", + module = "blink.compat.source", + score_offset = 1000, + opts = {}, + }, + }, + }, + }, + }, { "zbirenbaum/copilot.lua", optional = true, @@ -55,4 +83,23 @@ return { }, }, }, + { + "MeanderingProgrammer/render-markdown.nvim", + optional = true, + ft = function(_, ft) + vim.list_extend(ft, { "Avante" }) + end, + opts = function(_, opts) + opts.file_types = vim.list_extend(opts.file_types or {}, { "Avante" }) + end, + }, + { + "folke/which-key.nvim", + optional = true, + opts = { + spec = { + { "<leader>a", group = "ai" }, + }, + }, + }, }