diff --git a/src/ClaudeDo.Ui/ViewModels/Modals/Settings/PrimeScheduleRowViewModel.cs b/src/ClaudeDo.Ui/ViewModels/Modals/Settings/PrimeScheduleRowViewModel.cs
index 7830488..fe7e140 100644
--- a/src/ClaudeDo.Ui/ViewModels/Modals/Settings/PrimeScheduleRowViewModel.cs
+++ b/src/ClaudeDo.Ui/ViewModels/Modals/Settings/PrimeScheduleRowViewModel.cs
@@ -1,3 +1,4 @@
+using System.Globalization;
using ClaudeDo.Ui.Services;
using CommunityToolkit.Mvvm.ComponentModel;
@@ -23,8 +24,26 @@ public sealed partial class PrimeScheduleRowViewModel : ViewModelBase
public string LastRunLabel => LastRunAt is { } v ? v.LocalDateTime.ToString("g") : "—";
+ private static readonly string[] TimeFormats = { @"h\:mm", @"hh\:mm" };
+
+ public string TimeText
+ {
+ get => TimeOfDay.ToString(@"hh\:mm", CultureInfo.InvariantCulture);
+ set
+ {
+ if (TimeSpan.TryParseExact(value, TimeFormats, CultureInfo.InvariantCulture, out var t)
+ && t >= TimeSpan.Zero && t < TimeSpan.FromDays(1))
+ {
+ TimeOfDay = t;
+ }
+ OnPropertyChanged(nameof(TimeText));
+ }
+ }
+
partial void OnLastRunAtChanged(DateTimeOffset? value) => OnPropertyChanged(nameof(LastRunLabel));
+ partial void OnTimeOfDayChanged(TimeSpan value) => OnPropertyChanged(nameof(TimeText));
+
public PrimeScheduleRowViewModel(PrimeScheduleDto dto, bool isExisting)
{
Id = dto.Id;
diff --git a/src/ClaudeDo.Ui/Views/Modals/SettingsModalView.axaml b/src/ClaudeDo.Ui/Views/Modals/SettingsModalView.axaml
index b185c09..8b137a3 100644
--- a/src/ClaudeDo.Ui/Views/Modals/SettingsModalView.axaml
+++ b/src/ClaudeDo.Ui/Views/Modals/SettingsModalView.axaml
@@ -224,10 +224,10 @@
-
+