From 36f8db962907d80b6a0cec86fdc4244afe79a0da Mon Sep 17 00:00:00 2001 From: Lucas Pereira Date: Wed, 19 Feb 2025 17:00:10 +0100 Subject: [PATCH] feat: allow disabling tools for claude & copilot (#1300) --- lua/avante/providers/claude.lua | 3 ++- lua/avante/providers/copilot.lua | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lua/avante/providers/claude.lua b/lua/avante/providers/claude.lua index bf64fa3..e438846 100644 --- a/lua/avante/providers/claude.lua +++ b/lua/avante/providers/claude.lua @@ -227,6 +227,7 @@ end ---@return table M.parse_curl_args = function(provider, prompt_opts) local provider_conf, request_body = P.parse_config(provider) + local disable_tools = provider_conf.disable_tools or false local headers = { ["Content-Type"] = "application/json", @@ -239,7 +240,7 @@ M.parse_curl_args = function(provider, prompt_opts) local messages = M.parse_messages(prompt_opts) local tools = {} - if prompt_opts.tools then + if not disable_tools and prompt_opts.tools then for _, tool in ipairs(prompt_opts.tools) do table.insert(tools, transform_tool(tool)) end diff --git a/lua/avante/providers/copilot.lua b/lua/avante/providers/copilot.lua index 050b934..847c2e5 100644 --- a/lua/avante/providers/copilot.lua +++ b/lua/avante/providers/copilot.lua @@ -250,9 +250,10 @@ M.parse_curl_args = function(provider, prompt_opts) H.refresh_token(false, false) local provider_conf, request_body = P.parse_config(provider) + local disable_tools = provider_conf.disable_tools or false local tools = {} - if prompt_opts.tools then + if not disable_tools and prompt_opts.tools then for _, tool in ipairs(prompt_opts.tools) do table.insert(tools, OpenAI.transform_tool(tool)) end