feat: Add tools permissions (#238)

This commit is contained in:
Petr Mironychev
2025-10-12 03:56:05 +02:00
committed by GitHub
parent 5f094887e7
commit ce66c8e4f7
21 changed files with 103 additions and 23 deletions

View File

@ -30,6 +30,7 @@
#include "logger/Logger.hpp"
#include "settings/ChatAssistantSettings.hpp"
#include "settings/CodeCompletionSettings.hpp"
#include "settings/GeneralSettings.hpp"
#include "settings/ProviderSettings.hpp"
namespace QodeAssist::Providers {
@ -99,7 +100,7 @@ void ClaudeProvider::prepareRequest(
}
if (supportsTools() && type == LLMCore::RequestType::Chat
&& Settings::chatAssistantSettings().useTools()) {
&& Settings::generalSettings().useTools()) {
auto toolsDefinitions = m_toolsManager->getToolsDefinitions(
LLMCore::ToolSchemaFormat::Claude);
if (!toolsDefinitions.isEmpty()) {

View File

@ -30,6 +30,7 @@
#include "logger/Logger.hpp"
#include "settings/ChatAssistantSettings.hpp"
#include "settings/CodeCompletionSettings.hpp"
#include "settings/GeneralSettings.hpp"
#include "settings/ProviderSettings.hpp"
namespace QodeAssist::Providers {
@ -102,7 +103,7 @@ void GoogleAIProvider::prepareRequest(
}
if (supportsTools() && type == LLMCore::RequestType::Chat
&& Settings::chatAssistantSettings().useTools()) {
&& Settings::generalSettings().useTools()) {
auto toolsDefinitions = m_toolsManager->getToolsDefinitions(
LLMCore::ToolSchemaFormat::Google);
if (!toolsDefinitions.isEmpty()) {

View File

@ -23,6 +23,7 @@
#include "logger/Logger.hpp"
#include "settings/ChatAssistantSettings.hpp"
#include "settings/CodeCompletionSettings.hpp"
#include "settings/GeneralSettings.hpp"
#include "settings/ProviderSettings.hpp"
#include <QEventLoop>
@ -250,7 +251,7 @@ void LMStudioProvider::prepareRequest(
}
if (supportsTools() && type == LLMCore::RequestType::Chat
&& Settings::chatAssistantSettings().useTools()) {
&& Settings::generalSettings().useTools()) {
auto toolsDefinitions = m_toolsManager->getToolsDefinitions(
LLMCore::ToolSchemaFormat::OpenAI);
if (!toolsDefinitions.isEmpty()) {

View File

@ -23,6 +23,7 @@
#include "logger/Logger.hpp"
#include "settings/ChatAssistantSettings.hpp"
#include "settings/CodeCompletionSettings.hpp"
#include "settings/GeneralSettings.hpp"
#include <QEventLoop>
#include <QJsonArray>
@ -101,7 +102,7 @@ void LlamaCppProvider::prepareRequest(
}
if (supportsTools() && type == LLMCore::RequestType::Chat
&& Settings::chatAssistantSettings().useTools()) {
&& Settings::generalSettings().useTools()) {
auto toolsDefinitions = m_toolsManager->getToolsDefinitions(
LLMCore::ToolSchemaFormat::OpenAI);
if (!toolsDefinitions.isEmpty()) {

View File

@ -23,6 +23,7 @@
#include "logger/Logger.hpp"
#include "settings/ChatAssistantSettings.hpp"
#include "settings/CodeCompletionSettings.hpp"
#include "settings/GeneralSettings.hpp"
#include "settings/ProviderSettings.hpp"
#include <QEventLoop>
@ -271,7 +272,7 @@ void MistralAIProvider::prepareRequest(
}
if (supportsTools() && type == LLMCore::RequestType::Chat
&& Settings::chatAssistantSettings().useTools()) {
&& Settings::generalSettings().useTools()) {
auto toolsDefinitions = m_toolsManager->getToolsDefinitions(
LLMCore::ToolSchemaFormat::OpenAI);
if (!toolsDefinitions.isEmpty()) {

View File

@ -29,6 +29,7 @@
#include "logger/Logger.hpp"
#include "settings/ChatAssistantSettings.hpp"
#include "settings/CodeCompletionSettings.hpp"
#include "settings/GeneralSettings.hpp"
#include "settings/ProviderSettings.hpp"
namespace QodeAssist::Providers {
@ -107,7 +108,7 @@ void OllamaProvider::prepareRequest(
}
if (supportsTools() && type == LLMCore::RequestType::Chat
&& Settings::chatAssistantSettings().useTools()) {
&& Settings::generalSettings().useTools()) {
auto toolsDefinitions = m_toolsManager->toolsFactory()->getToolsDefinitions(
LLMCore::ToolSchemaFormat::Ollama);
if (!toolsDefinitions.isEmpty()) {

View File

@ -23,6 +23,7 @@
#include "logger/Logger.hpp"
#include "settings/ChatAssistantSettings.hpp"
#include "settings/CodeCompletionSettings.hpp"
#include "settings/GeneralSettings.hpp"
#include "settings/ProviderSettings.hpp"
#include <QJsonArray>
@ -101,7 +102,7 @@ void OpenAICompatProvider::prepareRequest(
}
if (supportsTools() && type == LLMCore::RequestType::Chat
&& Settings::chatAssistantSettings().useTools()) {
&& Settings::generalSettings().useTools()) {
auto toolsDefinitions = m_toolsManager->getToolsDefinitions(
LLMCore::ToolSchemaFormat::OpenAI);
if (!toolsDefinitions.isEmpty()) {

View File

@ -23,6 +23,7 @@
#include "logger/Logger.hpp"
#include "settings/ChatAssistantSettings.hpp"
#include "settings/CodeCompletionSettings.hpp"
#include "settings/GeneralSettings.hpp"
#include "settings/ProviderSettings.hpp"
#include <QEventLoop>
@ -102,7 +103,7 @@ void OpenAIProvider::prepareRequest(
}
if (supportsTools() && type == LLMCore::RequestType::Chat
&& Settings::chatAssistantSettings().useTools()) {
&& Settings::generalSettings().useTools()) {
auto toolsDefinitions = m_toolsManager->getToolsDefinitions(
LLMCore::ToolSchemaFormat::OpenAI);
if (!toolsDefinitions.isEmpty()) {