Shipping .NET 10 for macOS 12+ and .NET 8 for macOS 11 Big Sur in one Avalonia app (LiveClaude v2.2.8) A developer released LiveClaude v2.2.8, an MIT-licensed C#/Avalonia app that turns Claude Code Remote Control and Cursor My Machines terminal sessions into OS-supervised services via systemd, LaunchAgent and ConPTY/pty with a C# VT emulator. To keep .NET 10 as the default while still supporting macOS 11 Big Sur, the project added a parallel .NET 8 build path driven by a BaseTargetFramework property, with the macOS CI job producing separate .NET 10 and .NET 8 DMGs and the updater selecting the matching build via OperatingSystem.IsMacOSVersionAtLeast(12). If you use Claude Code Remote Control or Cursor My Machines from your phone, there is one brittle point in the workflow: both run as foreground processes inside a terminal. Close the window, hit a crash, or reboot — and your remote client loses the machine. I built LiveClaude https://github.com/LeandroCannizzaro/LiveClaude MIT, C / Avalonia to turn those sessions into OS-supervised services: systemd Linux , LaunchAgent macOS ConPTY on Windows and pty on Linux/macOS with a C VT emulator for one-time trust and login flows 👉 User Manual & Downloads: https://leandrocannizzaro.github.io/LiveClaude/ https://leandrocannizzaro.github.io/LiveClaude/ 👉 GitHub Repository MIT : https://github.com/LeandroCannizzaro/LiveClaude https://github.com/LeandroCannizzaro/LiveClaude When shipping LiveClaude v2.2.x , we hit an interesting cross-platform constraint: .NET 10 Mach-O binaries apphost and runtime .dylib s are built by Microsoft with LC BUILD VERSION minos 12.0 . Even if you lower LSMinimumSystemVersion to 11.0 in Info.plist , macOS 11 Big Sur still refuses to launch a .NET 10 app. We didn't want to downgrade Windows, Linux, or macOS 12+ from .NET 10 just to support Big Sur. Instead, in v2.2.7–v2.2.8 , we kept .NET 10 as the default everywhere and added a parallel .NET 8 build path specifically for macOS 11: Directory.Build.props :