diff --git a/nix/base-system/flake.lock b/nix/base-system/flake.lock index cac9864..72a0964 100644 --- a/nix/base-system/flake.lock +++ b/nix/base-system/flake.lock @@ -20,6 +20,22 @@ "type": "github" } }, + "avante-src": { + "flake": false, + "locked": { + "lastModified": 1746602870, + "narHash": "sha256-REBOplEe2muqfVLwcpTAmXpTrHlzSfhbh8T0litDTDA=", + "owner": "yetone", + "repo": "avante.nvim", + "rev": "113913355a6b9c0fbd62cf52d0cf3e5671d0e34a", + "type": "github" + }, + "original": { + "owner": "yetone", + "repo": "avante.nvim", + "type": "github" + } + }, "clio-flake": { "inputs": { "flake-compat": "flake-compat", @@ -46,6 +62,7 @@ }, "custom-flakes": { "inputs": { + "avante-src": "avante-src", "d2-vim-src": "d2-vim-src", "flake-utils": "flake-utils_3", "gomod2nix-src": "gomod2nix-src", @@ -67,11 +84,11 @@ "zig-src": "zig-src" }, "locked": { - "lastModified": 1746458473, - "narHash": "sha256-3FFhJ18MJFlHHI1YaMKRwXURcQjmLenxIcLFtr+CjGI=", + "lastModified": 1746633381, + "narHash": "sha256-9Vgnz0/Myw+XdZUxNWYhfdfRzz1SSDQIFjrhaXFcJpk=", "owner": "zaphar", "repo": "nix-flakes", - "rev": "91588e10769e706024d8d03ebb4958c89e00c264", + "rev": "30a4fb242f5e6542b842be1972d953d20945ed7a", "type": "github" }, "original": { diff --git a/nix/base-system/flake.nix b/nix/base-system/flake.nix index bc0000e..c2d6cd1 100644 --- a/nix/base-system/flake.nix +++ b/nix/base-system/flake.nix @@ -90,6 +90,7 @@ vimModule = system: let nil-pkg = nil-flake.packages."${system}".default; mcp-hub-binary = custom-flakes.packages."${system}".mcp-hub; + notion-mcp-server = custom-flakes.packages."${system}".notion-mcp-server; in { config, pkgs, ...}: let unstablePkgs = import unstable { inherit system; }; @@ -139,7 +140,7 @@ (final: prev: { custom-neovim = nvim; lorri = unstablePkgs.lorri; - avante-nvim = unstablePkgs.vimPlugins.avante-nvim; + our-avante-nvim = custom-flakes.packages."${system}".avante-nvim; copilot-lua = unstablePkgs.vimPlugins.copilot-lua; }) ]; @@ -155,7 +156,7 @@ EOF"; packages.myVimPackage = { start = (with pkgs.vimPlugins; [ copilot-lua - avante-nvim + our-avante-nvim vim-sile nvim-tree-lua nvim-lspconfig @@ -251,6 +252,7 @@ EOF"; devenv unstablePkgs.fq mcp-hub-binary + notion-mcp-server ]); }; }; diff --git a/nix/base-system/init.lua b/nix/base-system/init.lua index 5ab7ffe..5e36fe8 100644 --- a/nix/base-system/init.lua +++ b/nix/base-system/init.lua @@ -678,7 +678,7 @@ local mcphub = require("mcphub") mcphub.setup({ -- This sets vim.g.mcphub_auto_approve to false by default (can also be toggled from the HUB UI with `ga`) config = vim.fn.expand("~/.config/mcphub/servers.json"), - auto_approve = false, + auto_approve = true, auto_toggle_mcp_servers = true, -- Let LLMs start and stop MCP servers automatically extensions = { avante = { @@ -695,6 +695,7 @@ require('copilot').setup(); require('avante').setup ({ provider = "claude", mode = "agentic", + --debug = true, cursor_applying_provider = nil, -- default to whatever provide is configured claude = { endpoint = "https://api.anthropic.com", @@ -703,12 +704,27 @@ require('avante').setup ({ temperature = 0, max_tokens = 20480, }, + rag_service = { + enabled = false, + host_mount = os.getenv("HOME"), -- Host mount path for the rag service + provider = "ollama", -- The provider to use for RAG service (e.g. openai or ollama) + llm_model = "llama3", -- The LLM model to use for RAG service + embed_model = "", -- The embedding model to use for RAG service + endpoint = "http://localhost:11434", -- The API endpoint for RAG service + }, behavior = { enable_cursor_planning_mode = true, }, - --system_prompt = hub_instance:get_active_servers_prompt(), + system_prompt = function() + local hub = require("mcphub").get_hub_instance() + return hub and hub:get_active_servers_prompt() or "" + end, -- Using function prevents requiring mcphub before it's loaded - custom_tools = require("mcphub.extensions.avante").mcp_tool(), + custom_tools = function() + return { + require("mcphub.extensions.avante").mcp_tool(), + } + end, -- Disable these because we'll use the mcphub versions instead disabled_tools = { "list_files", -- Built-in file operations