diff --git a/.claude/settings.local.json b/.claude/settings.local.json index afac14a..0e9a7b7 100644 --- a/.claude/settings.local.json +++ b/.claude/settings.local.json @@ -1,7 +1,9 @@ { "permissions": { "allow": [ - "Bash(dotnet build:*)" + "Bash(dotnet build:*)", + "Bash(git add:*)", + "Bash(git commit -m \"$(cat <<''EOF''\nRelease v1.2.0: Integrate osquery for enhanced system information\n\nMajor Features:\n- Integrated osquery for comprehensive system information gathering\n- Added OsqueryService for executing SQL queries against system tables\n- Implemented Osquery Console tab for interactive SQL queries\n\nSystem Info Improvements:\n- Enhanced system info collection using osquery tables\n- Added support for multiple GPU detection\n- Improved memory detection with proper GB formatting\n- Fixed OS Architecture detection (x64/x86)\n- Better network interface detection (IPv4 only)\n- Human-readable timestamp formatting\n\nUI/UX Enhancements:\n- Added window resizing with corner drag support\n- Implemented dynamic window sizing (SizeToContent)\n- Added ScrollViewer for content overflow\n- Improved IP address formatting with bullet points\n- Added field labels to all system info displays\n- Set minimum/maximum window size constraints\n\nBug Fixes:\n- Fixed XAML StackPanel Spacing property issue\n- Merged duplicate MainWindow constructors\n- Fixed non-nullable field warnings\n- Fixed EventHandler nullability signatures\n- Removed redundant hostname/OS name fields\n- Fixed GPU registry query to detect all GPUs\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude \nEOF\n)\")" ], "deny": [], "ask": [] diff --git a/LD-SysInfo/Assets/osqueryi.exe b/LD-SysInfo/Assets/osqueryi.exe new file mode 100644 index 0000000..ca880c8 Binary files /dev/null and b/LD-SysInfo/Assets/osqueryi.exe differ diff --git a/LD-SysInfo/Config.cs b/LD-SysInfo/Config.cs new file mode 100644 index 0000000..17949fa --- /dev/null +++ b/LD-SysInfo/Config.cs @@ -0,0 +1,39 @@ +#nullable disable +using System; +using System.IO; + +using Newtonsoft.Json; + +namespace LD_SysInfo +{ + public class AppConfig + { + [JsonProperty("ServerUrl")] public string ServerUrl { get; set; } = "https://yourserver.com/api/status"; + [JsonProperty("EnableLogging")] public bool EnableLogging { get; set; } = true; + [JsonProperty("KeepAlivePeriod")] public int KeepAlivePeriod { get; set; } = 30; + [JsonProperty("SystemInfoInterval")] public int SystemInfoInterval { get; set; } = 60; + [JsonProperty("ClientIdentifier")] public string ClientIdentifier { get; set; } = "your-default-client-id"; + [JsonProperty("Auth")] public AuthConfig Auth { get; set; } = new(); + } + + public class AuthConfig + { + [JsonProperty("Username")] public string Username { get; set; } = "testuser"; + [JsonProperty("Password")] public string Password { get; set; } = "testpassword"; + } + + public static class ConfigManager + { + private static readonly string ConfigPath = Path.Combine(AppContext.BaseDirectory, "config.json"); + + public static AppConfig LoadConfig(string? pathOverride = null) + { + string path = pathOverride ?? ConfigPath; + if (!File.Exists(path)) + throw new FileNotFoundException($"Config file not found at {path}"); + + string json = File.ReadAllText(path); + return JsonConvert.DeserializeObject(json) ?? new AppConfig(); + } + } +} diff --git a/LD-SysInfo/LD_SysInfo.csproj b/LD-SysInfo/LD_SysInfo.csproj index 84f02bd..20da03f 100644 --- a/LD-SysInfo/LD_SysInfo.csproj +++ b/LD-SysInfo/LD_SysInfo.csproj @@ -13,9 +13,9 @@ false - 1.0.0.0 - 1.0.3.0 - 1.0.3 + 1.2.0.0 + 1.2.0.0 + 1.2.0 true @@ -48,9 +48,13 @@ + + + Always + diff --git a/LD-SysInfo/MainWindow.xaml b/LD-SysInfo/MainWindow.xaml index 4da47e3..2285cf0 100644 --- a/LD-SysInfo/MainWindow.xaml +++ b/LD-SysInfo/MainWindow.xaml @@ -11,11 +11,15 @@ mc:Ignorable="d" Title="PSG - Oversight" - Height="500" - Width="400" + SizeToContent="Height" + Width="420" + MinHeight="400" + MinWidth="350" + MaxHeight="800" Icon="Assets/trayicon.ico" WindowStyle="None" AllowsTransparency="True" + ResizeMode="CanResizeWithGrip" Background="Transparent" Foreground="{DynamicResource TextDarkBrush}"> @@ -225,7 +229,8 @@ - + + - - - - - - - - - - + + + + + + + + + + + -