Import des bestehenden Projektstands in Git. - .NET 10 WinForms Anwendung (Multi-Agent / Tool-System) - .gitignore fuer Build-Artefakte, Secrets und Runtime-Daten ergaenzt Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
59 lines
2.3 KiB
C#
59 lines
2.3 KiB
C#
using System.ComponentModel;
|
|
using System.Text.Json.Serialization;
|
|
|
|
namespace ClawdDotNet.Models;
|
|
|
|
[TypeConverter(typeof(ExpandableObjectConverter))]
|
|
public sealed class AppSettings
|
|
{
|
|
[Category("Allgemein")]
|
|
[DisplayName("Log-Verzeichnis")]
|
|
[Description("Pfad zum Verzeichnis, in dem Log-Dateien gespeichert werden.")]
|
|
[JsonPropertyName("logDirectory")]
|
|
public string LogDirectory { get; set; } = "./Logs";
|
|
|
|
[Category("Allgemein")]
|
|
[DisplayName("Instanzen-Verzeichnis")]
|
|
[Description("Pfad zum Verzeichnis, in dem alle Instanz-Ordner liegen.")]
|
|
[JsonPropertyName("instancesDirectory")]
|
|
public string InstancesDirectory { get; set; } = "./Instances";
|
|
|
|
[Category("Allgemein")]
|
|
[DisplayName("Standard-Konfigurations-Datei")]
|
|
[Description("Pfad zur Standard-Instanz-Konfiguration (Legacy). Neue Instanzen nutzen das Instanzen-Verzeichnis.")]
|
|
[JsonPropertyName("defaultConfigPath")]
|
|
public string DefaultConfigPath { get; set; } = "./configs/config.json";
|
|
|
|
[Category("Allgemein")]
|
|
[DisplayName("Minimaler Log-Level")]
|
|
[Description("Minimaler Log-Level für die Datei-Logs (Debug, Info, Warn, Error).")]
|
|
[JsonPropertyName("minimumLogLevel")]
|
|
public string MinimumLogLevel { get; set; } = "Info";
|
|
|
|
[Category("UI")]
|
|
[DisplayName("Max. Log-Zeilen in UI")]
|
|
[Description("Maximale Anzahl Zeilen in der Log-RichTextBox bevor bereinigt wird.")]
|
|
[JsonPropertyName("maxLogLinesInUi")]
|
|
public int MaxLogLinesInUi { get; set; } = 2000;
|
|
|
|
[Category("UI")]
|
|
[DisplayName("Log-Aktualisierungsintervall (ms)")]
|
|
[Description("Intervall in Millisekunden, in dem die Log-Anzeige aktualisiert wird.")]
|
|
[JsonPropertyName("logRefreshIntervalMs")]
|
|
public int LogRefreshIntervalMs { get; set; } = 500;
|
|
|
|
[Category("API")]
|
|
[DisplayName("Status-Check-Intervall (Sek)")]
|
|
[Description("Intervall in Sekunden für den OpenRouter-API-Status-Check.")]
|
|
[JsonPropertyName("statusCheckIntervalSeconds")]
|
|
public int StatusCheckIntervalSeconds { get; set; } = 60;
|
|
|
|
[Category("API")]
|
|
[DisplayName("OpenRouter Base-URL")]
|
|
[Description("Basis-URL der OpenRouter-API.")]
|
|
[JsonPropertyName("openRouterBaseUrl")]
|
|
public string OpenRouterBaseUrl { get; set; } = "https://openrouter.ai/api/v1/";
|
|
|
|
public override string ToString() => "Anwendungseinstellungen";
|
|
}
|