mirror of
https://github.com/MindWorkAI/AI-Studio.git
synced 2026-10-10 02:53:48 +00:00
Add brave mode for Read Web Page tool
This commit is contained in:
1 parent
e9ebc02a96
commit
672abb4082
9 files changed
+70
-17
No files matched your search
@@ -27,9 +27,7 @@ public sealed partial class ToolSettingsService(SettingsManager settingsManager,
|
||||
public async Task<Dictionary<string, string>> GetSettingsAsync(ToolDefinition definition)
|
||||
{
|
||||
var values = new Dictionary<string, string>(StringComparer.Ordinal);
|
||||
var storedValues = settingsManager.ConfigurationData.Tools.Settings.GetValueOrDefault(definition.Id);
|
||||
var lockedSettings = settingsManager.ConfigurationData.Tools.LockedToolSettings;
|
||||
var defaultSettings = settingsManager.ConfigurationData.Tools.DefaultToolSettings;
|
||||
|
||||
foreach (var property in definition.SettingsSchema.Properties)
|
||||
{
|
||||
@@ -59,17 +57,28 @@ public sealed partial class ToolSettingsService(SettingsManager settingsManager,
|
||||
continue;
|
||||
}
|
||||
|
||||
if (lockedSettings.TryGetValue(managedKey, out var lockedValue))
|
||||
values[fieldName] = lockedValue;
|
||||
else if (storedValues?.TryGetValue(fieldName, out var storedValue) is true)
|
||||
values[fieldName] = storedValue;
|
||||
else if (defaultSettings.TryGetValue(managedKey, out var defaultValue))
|
||||
values[fieldName] = defaultValue;
|
||||
if (this.GetEffectiveNonSecretSetting(definition.Id, fieldName) is { } value)
|
||||
values[fieldName] = value;
|
||||
}
|
||||
|
||||
return values;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads one non-secret setting with the same organization, user, and default precedence as GetSettingsAsync.
|
||||
/// Prompt instructions use this synchronous path while each request is assembled.
|
||||
/// </summary>
|
||||
public string? GetEffectiveNonSecretSetting(string toolId, string fieldName)
|
||||
{
|
||||
var tools = settingsManager.ConfigurationData.Tools;
|
||||
var managedKey = ManagedSettingKey(toolId, fieldName);
|
||||
if (tools.LockedToolSettings.TryGetValue(managedKey, out var lockedValue))
|
||||
return lockedValue;
|
||||
if (tools.Settings.GetValueOrDefault(toolId)?.TryGetValue(fieldName, out var storedValue) is true)
|
||||
return storedValue;
|
||||
return tools.DefaultToolSettings.GetValueOrDefault(managedKey);
|
||||
}
|
||||
|
||||
public async Task<ToolConfigurationState> GetConfigurationStateAsync(
|
||||
ToolDefinition definition,
|
||||
IToolImplementation? implementation = null,
|
||||
@@ -202,4 +211,4 @@ public sealed partial class ToolSettingsService(SettingsManager settingsManager,
|
||||
secret = decryptedSecret;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user