chore: move appdata folder to .claudeDo
This commit is contained in:
@@ -49,7 +49,7 @@ Each step implements `IInstallStep`; `InstallerService` runs them sequentially,
|
||||
`StopWorkerStep` → `DownloadAndExtractStep` → `RegisterAutostartStep` → `StartWorkerStep`
|
||||
|
||||
**Uninstall** (`UninstallRunner`):
|
||||
Stop worker → remove legacy task/service → delete HKLM uninstall key + shortcuts → delete install dir (cmd.exe trampoline if uninstaller exe is inside it) → optionally delete `~/.todo-app`
|
||||
Stop worker → remove legacy task/service → delete HKLM uninstall key + shortcuts → delete install dir (cmd.exe trampoline if uninstaller exe is inside it) → optionally delete `~/.claudeDo`
|
||||
|
||||
## Folder Layout
|
||||
|
||||
@@ -97,9 +97,9 @@ and restored if it fails.
|
||||
| Property | Default |
|
||||
|---|---|
|
||||
| `InstallDirectory` | `C:\Program Files\ClaudeDo` |
|
||||
| `DbPath` | `~/.todo-app/todo.db` |
|
||||
| `LogRoot` | `~/.todo-app/logs` |
|
||||
| `SandboxRoot` | `~/.todo-app/sandbox` |
|
||||
| `DbPath` | `~/.claudeDo/todo.db` |
|
||||
| `LogRoot` | `~/.claudeDo/logs` |
|
||||
| `SandboxRoot` | `~/.claudeDo/sandbox` |
|
||||
| `WorktreeRootStrategy` | `sibling` |
|
||||
| `SignalRPort` | `47821` |
|
||||
| `ExternalMcpPort` | `47822` |
|
||||
@@ -112,9 +112,9 @@ and restored if it fails.
|
||||
|
||||
| Path | Content |
|
||||
|---|---|
|
||||
| `~/.todo-app/worker.config.json` | Worker config |
|
||||
| `~/.todo-app/ui.config.json` | UI config |
|
||||
| `~/.todo-app/todo.db` | SQLite DB (EF migrations) |
|
||||
| `~/.claudeDo/worker.config.json` | Worker config |
|
||||
| `~/.claudeDo/ui.config.json` | UI config |
|
||||
| `~/.claudeDo/todo.db` | SQLite DB (EF migrations) |
|
||||
| `<InstallDir>\install.json` | Install manifest |
|
||||
| `<InstallDir>\app\` | UI binaries |
|
||||
| `<InstallDir>\worker\` | Worker binaries |
|
||||
|
||||
@@ -29,19 +29,19 @@ internal static class JsonConfigFile
|
||||
public sealed class InstallerWorkerConfig
|
||||
{
|
||||
[JsonPropertyName("db_path")]
|
||||
public string DbPath { get; set; } = "~/.todo-app/todo.db";
|
||||
public string DbPath { get; set; } = "~/.claudeDo/todo.db";
|
||||
|
||||
[JsonPropertyName("sandbox_root")]
|
||||
public string SandboxRoot { get; set; } = "~/.todo-app/sandbox";
|
||||
public string SandboxRoot { get; set; } = "~/.claudeDo/sandbox";
|
||||
|
||||
[JsonPropertyName("log_root")]
|
||||
public string LogRoot { get; set; } = "~/.todo-app/logs";
|
||||
public string LogRoot { get; set; } = "~/.claudeDo/logs";
|
||||
|
||||
[JsonPropertyName("worktree_root_strategy")]
|
||||
public string WorktreeRootStrategy { get; set; } = "sibling";
|
||||
|
||||
[JsonPropertyName("central_worktree_root")]
|
||||
public string CentralWorktreeRoot { get; set; } = "~/.todo-app/worktrees";
|
||||
public string CentralWorktreeRoot { get; set; } = "~/.claudeDo/worktrees";
|
||||
|
||||
[JsonPropertyName("queue_backstop_interval_ms")]
|
||||
public int QueueBackstopIntervalMs { get; set; } = 30_000;
|
||||
@@ -78,7 +78,7 @@ public sealed class InstallerWorkerConfig
|
||||
/// </summary>
|
||||
public sealed class InstallerAppSettings
|
||||
{
|
||||
public string DbPath { get; set; } = "~/.todo-app/todo.db";
|
||||
public string DbPath { get; set; } = "~/.claudeDo/todo.db";
|
||||
public string SignalRUrl { get; set; } = "http://127.0.0.1:47821/hub";
|
||||
public string Language { get; set; } = "";
|
||||
|
||||
|
||||
@@ -13,11 +13,11 @@ public sealed class InstallContext
|
||||
public bool LatestTagUnparseable { get; set; } // true if latest tag isn't a System.Version
|
||||
|
||||
// PathsPage
|
||||
public string DbPath { get; set; } = "~/.todo-app/todo.db";
|
||||
public string LogRoot { get; set; } = "~/.todo-app/logs";
|
||||
public string SandboxRoot { get; set; } = "~/.todo-app/sandbox";
|
||||
public string DbPath { get; set; } = "~/.claudeDo/todo.db";
|
||||
public string LogRoot { get; set; } = "~/.claudeDo/logs";
|
||||
public string SandboxRoot { get; set; } = "~/.claudeDo/sandbox";
|
||||
public string WorktreeRootStrategy { get; set; } = "sibling";
|
||||
public string CentralWorktreeRoot { get; set; } = "~/.todo-app/worktrees";
|
||||
public string CentralWorktreeRoot { get; set; } = "~/.claudeDo/worktrees";
|
||||
|
||||
// ServicePage
|
||||
public int SignalRPort { get; set; } = 47_821;
|
||||
@@ -28,7 +28,7 @@ public sealed class InstallContext
|
||||
|
||||
// UiSettingsPage
|
||||
public string SignalRUrl { get; set; } = "http://127.0.0.1:47821/hub";
|
||||
public string UiDbPath { get; set; } = "~/.todo-app/todo.db";
|
||||
public string UiDbPath { get; set; } = "~/.claudeDo/todo.db";
|
||||
|
||||
// InstallPage
|
||||
public bool CreateDesktopShortcut { get; set; } = true;
|
||||
|
||||
@@ -72,7 +72,7 @@ public sealed class UninstallRunner
|
||||
|
||||
// 6) Delete data dir (config + DB + logs) — only if user opted in.
|
||||
// Prefer the manifest-recorded DataDir so a customised DbPath is honoured;
|
||||
// fall back to the default ~/.todo-app for older manifests.
|
||||
// fall back to the default app data root for older manifests.
|
||||
if (removeAppData)
|
||||
{
|
||||
var manifest = InstallManifestStore.TryRead(_context.InstallDirectory);
|
||||
|
||||
@@ -17,11 +17,11 @@ public partial class PathsPageViewModel : ObservableObject, IInstallerPage
|
||||
public bool ShowInSettings => true;
|
||||
public UserControl View => _view ??= new PathsPageView { DataContext = this };
|
||||
|
||||
[ObservableProperty] private string _dbPath = "~/.todo-app/todo.db";
|
||||
[ObservableProperty] private string _logRoot = "~/.todo-app/logs";
|
||||
[ObservableProperty] private string _sandboxRoot = "~/.todo-app/sandbox";
|
||||
[ObservableProperty] private string _dbPath = "~/.claudeDo/todo.db";
|
||||
[ObservableProperty] private string _logRoot = "~/.claudeDo/logs";
|
||||
[ObservableProperty] private string _sandboxRoot = "~/.claudeDo/sandbox";
|
||||
[ObservableProperty] private string _worktreeRootStrategy = "sibling";
|
||||
[ObservableProperty] private string _centralWorktreeRoot = "~/.todo-app/worktrees";
|
||||
[ObservableProperty] private string _centralWorktreeRoot = "~/.claudeDo/worktrees";
|
||||
[ObservableProperty] private string? _validationError;
|
||||
|
||||
public bool IsCentralVisible => WorktreeRootStrategy == "central";
|
||||
|
||||
@@ -18,7 +18,7 @@ public partial class UiSettingsPageViewModel : ObservableObject, IInstallerPage
|
||||
public UserControl View => _view ??= new UiSettingsPageView { DataContext = this };
|
||||
|
||||
[ObservableProperty] private string _signalRUrl = "http://127.0.0.1:47821/hub";
|
||||
[ObservableProperty] private string _uiDbPath = "~/.todo-app/todo.db";
|
||||
[ObservableProperty] private string _uiDbPath = "~/.claudeDo/todo.db";
|
||||
[ObservableProperty] private bool _isSynced = true;
|
||||
[ObservableProperty] private string? _validationError;
|
||||
|
||||
|
||||
@@ -183,7 +183,7 @@ public partial class SettingsViewModel : ObservableObject
|
||||
{
|
||||
var dataNote = RemoveAppData
|
||||
? "This will remove ClaudeDo AND delete all of your tasks, configuration, and database.\n\nContinue?"
|
||||
: "This will remove ClaudeDo. Your tasks, configuration, and database in ~/.todo-app will be kept.\n\nContinue?";
|
||||
: "This will remove ClaudeDo. Your tasks, configuration, and database in ~/.claudeDo will be kept.\n\nContinue?";
|
||||
|
||||
var confirm = MessageBox.Show(
|
||||
dataNote,
|
||||
|
||||
Reference in New Issue
Block a user