Reminders written down as todos had no home: every task looked like Claude work. A manual task now shows a MANUAL badge and hides send-to-queue, refine and the planning session; the queue picker, daily prep and the list handler all skip it, with a TaskStateService guard so the MCP surface and hub cannot start one either. Opening a hand-driven ConPTY session stays available on purpose. A list can be marked manual in its settings, which makes tasks created there (UI and MCP add_task) start out manual. Toggle per task from its context menu.
555 lines
23 KiB
JSON
555 lines
23 KiB
JSON
{
|
|
"metadata": { "code": "en", "name": "English" },
|
|
"settings": {
|
|
"title": "SETTINGS",
|
|
"save": "Save",
|
|
"cancel": "Cancel",
|
|
"language": "Language",
|
|
"tabGeneral": "General",
|
|
"tabWorktrees": "Worktrees",
|
|
"tabFiles": "Files",
|
|
"tabPrime": "Prime Claude",
|
|
"tabSkills": "Skills",
|
|
"general": {
|
|
"defaultInstructions": "Default instructions",
|
|
"defaultInstructionsPlaceholder": "Baseline instructions applied to every task",
|
|
"model": "Model",
|
|
"maxTurns": "Max turns",
|
|
"effort": "Effort",
|
|
"modelPresets": "Per-model defaults",
|
|
"modelPresetsHint": "Reasoning effort and turn budget used when a session runs under that model. List- and task-level max-turn overrides still win.",
|
|
"permission": "Permission",
|
|
"maxParallelExecutions": "Max parallel executions",
|
|
"maxParallelExecutionsHint": "How many queued tasks the worker runs at once.",
|
|
"reportExcludedPaths": "Report: excluded paths (one per line)",
|
|
"standupWeekday": "Standup weekday",
|
|
"weekdaySunday": "Sunday",
|
|
"weekdayMonday": "Monday",
|
|
"weekdayTuesday": "Tuesday",
|
|
"weekdayWednesday": "Wednesday",
|
|
"weekdayThursday": "Thursday",
|
|
"weekdayFriday": "Friday",
|
|
"weekdaySaturday": "Saturday",
|
|
"sessionSkills": "Session skills",
|
|
"sessionSkillsHint": "Applied to every task. Combines with list- and task-level selections."
|
|
},
|
|
"worktrees": {
|
|
"strategy": "Strategy",
|
|
"centralWorktreeRoot": "Central worktree root",
|
|
"autoCleanup": "Auto-cleanup finished worktrees after",
|
|
"days": "days",
|
|
"cleanupFinished": "Cleanup finished worktrees",
|
|
"forceRemoveAll": "Force-remove all worktrees",
|
|
"confirmRemoveAll": "Remove ALL worktrees? Uncommitted work will be lost.",
|
|
"removeAll": "Remove All"
|
|
},
|
|
"files": {
|
|
"agentsSection": "AGENTS",
|
|
"agentsHint": "Restore bundled default agents. Existing files are not overwritten.",
|
|
"restoreDefaultAgents": "Restore default agents",
|
|
"promptsSection": "PROMPTS",
|
|
"systemPrompt": "System",
|
|
"planningPrompt": "Planning (system)",
|
|
"planningInitialPrompt": "Planning kickoff",
|
|
"retryPrompt": "Retry",
|
|
"dailyPrepPrompt": "Daily prep",
|
|
"weeklyReportPrompt": "Weekly report",
|
|
"openInEditor": "Open in editor"
|
|
},
|
|
"prime": {
|
|
"description": "Prime your Claude usage window by firing a single non-interactive ping on the days you choose, at a chosen time. Only runs while ClaudeDo is open. If the app starts within 30 minutes of the target time, the ping fires immediately.",
|
|
"addSchedule": "+ Add schedule",
|
|
"removeScheduleTip": "Remove schedule",
|
|
"dailyPrepMaxTasks": "Max tasks per day",
|
|
"dayMo": "Mo",
|
|
"dayTu": "Tu",
|
|
"dayWe": "We",
|
|
"dayTh": "Th",
|
|
"dayFr": "Fr",
|
|
"daySa": "Sa",
|
|
"daySu": "Su"
|
|
},
|
|
"onlineInbox": {
|
|
"tabHeader": "Online Inbox",
|
|
"enabledLabel": "Enable online inbox sync",
|
|
"restartHint": "Enabling or disabling takes effect after a Worker restart.",
|
|
"apiBaseUrlLabel": "API base URL",
|
|
"apiBaseUrlPlaceholder": "https://inbox.claudedo.kuns.dev",
|
|
"authorityLabel": "Zitadel authority (issuer URL)",
|
|
"authorityPlaceholder": "https://auth.example.com",
|
|
"clientIdLabel": "Client ID",
|
|
"scopesLabel": "Scopes",
|
|
"redirectUriLabel": "Redirect URI",
|
|
"pollIntervalLabel": "Poll interval (seconds)",
|
|
"statusSection": "AUTH STATUS",
|
|
"signedInStatus": "Signed in",
|
|
"signedOutStatus": "Not signed in",
|
|
"signInButton": "Sign in via browser",
|
|
"signOutButton": "Sign out",
|
|
"configSection": "CONFIGURATION",
|
|
"saveButton": "Save config"
|
|
},
|
|
"inherit": {
|
|
"inheritedFromList": "inherited · List",
|
|
"inheritedFromGlobal": "inherited · Global",
|
|
"overrideBadge": "override",
|
|
"resetToInherited": "Reset to inherited"
|
|
},
|
|
"agentEditor": {
|
|
"model": "Model",
|
|
"maxTurns": "Max turns",
|
|
"systemPrompt": "System prompt (appended)",
|
|
"promptPrepended": "Prepended automatically:",
|
|
"agentFile": "Agent file",
|
|
"browse": "Browse...",
|
|
"sessionSkills": "Session skills",
|
|
"sessionSkillsHint": "Combines additively with global (and list) selections."
|
|
},
|
|
"skills": {
|
|
"installSection": "INSTALL",
|
|
"installUrlPlaceholder": "Git repo URL (owner/repo or full URL)",
|
|
"installButton": "Install",
|
|
"installedSection": "INSTALLED",
|
|
"updateButton": "Update",
|
|
"removeButton": "Remove",
|
|
"emptyState": "No skills installed — paste a GitHub URL above to add one."
|
|
}
|
|
},
|
|
"tasks": {
|
|
"showCompletedTip": "Show completed",
|
|
"listSettingsTip": "List settings",
|
|
"addPlaceholder": "Add a task…",
|
|
"enterKey": "ENTER",
|
|
"notesPinnedRow": "Notes (daily notes)",
|
|
"clearDayTip": "Clear day",
|
|
"planMyDayTip": "Plan My Day",
|
|
"overdue": "OVERDUE",
|
|
"tasks": "TASKS",
|
|
"clearCompletedTip": "Clear all completed",
|
|
"ctxSendToQueue": "Send to queue",
|
|
"ctxRemoveFromQueue": "Remove from queue",
|
|
"ctxCancelExecution": "Cancel execution",
|
|
"ctxMarkAs": "Mark as",
|
|
"ctxMarkDone": "Done",
|
|
"ctxMarkCancelled": "Cancelled",
|
|
"ctxOpenConPtySession": "Open ConPTY session",
|
|
"ctxPickUpInTerminal": "Pick up in terminal",
|
|
"ctxOpenPlanningSession": "Open planning Session",
|
|
"ctxResumePlanningSession": "Resume planning Session",
|
|
"ctxFinalizePlanningSession": "Finalize plan",
|
|
"ctxDiscardPlanningSession": "Discard planning session",
|
|
"ctxScheduleFor": "Schedule for...",
|
|
"ctxClearSchedule": "Clear schedule",
|
|
"ctxRemoveFromMyDay": "Remove from My Day",
|
|
"ctxAddToMyDay": "Add to My Day",
|
|
"badgeDraft": "DRAFT",
|
|
"badgePlanned": "PLANNED",
|
|
"badgeManual": "MANUAL",
|
|
"manualTip": "Manual reminder — Claude never picks this up",
|
|
"ctxMarkManual": "Mark as manual",
|
|
"ctxMarkClaudeTask": "Mark as Claude task",
|
|
"approve": "Approve",
|
|
"approveTip": "Approve — mark Done",
|
|
"reject": "Reject",
|
|
"rejectTip": "Reject with feedback and re-run",
|
|
"park": "Park",
|
|
"parkTip": "Send back to Idle for manual editing",
|
|
"cancel": "Cancel",
|
|
"cancelTip": "Cancel this task",
|
|
"removeFromQueueTip": "Remove from queue",
|
|
"toggleSubtasksTip": "Expand / collapse subtasks",
|
|
"agentSuggestedTip": "Suggested by the agent",
|
|
"interactiveChipTip": "Interactive session open — click to jump to it in Mission Control",
|
|
"scheduleTitle": "Schedule task",
|
|
"scheduleWhen": "WHEN",
|
|
"scheduleConfirm": "Schedule",
|
|
"rejectRerunTitle": "Reject & re-run",
|
|
"reviewTitle": "Review",
|
|
"feedbackLabel": "FEEDBACK FOR THE AGENT",
|
|
"feedbackPlaceholder": "What should the agent fix?",
|
|
"rerun": "Re-run",
|
|
"refineTip": "Refine this task with Claude",
|
|
"refiningTip": "Claude is refining this task…"
|
|
},
|
|
"lists": {
|
|
"heading": "Lists",
|
|
"searchPlaceholder": "Search tasks…",
|
|
"searchKbd": "Ctrl K",
|
|
"settingsTip": "Settings",
|
|
"smartListsLabel": "SMART LISTS",
|
|
"myListsLabel": "MY LISTS",
|
|
"contextSettings": "Settings...",
|
|
"contextWorktrees": "Worktrees…",
|
|
"contextOpenExplorer": "Open in Explorer",
|
|
"contextOpenTerminal": "Open in Terminal",
|
|
"contextLetClaude": "Let Claude handle it",
|
|
"newList": "New list",
|
|
"addReposTip": "Add repos as lists"
|
|
},
|
|
"details": {
|
|
"pickUpInTerminalTip": "Pick up this session in a terminal",
|
|
"deleteTaskTip": "Delete task",
|
|
"killSessionTip": "Kill the running session",
|
|
"closeTip": "Close",
|
|
"copyTaskIdTip": "Copy task ID",
|
|
"starTip": "Star",
|
|
"agentSettingsTip": "Agent settings",
|
|
"agentSettingsHeading": "Agent settings (overrides)",
|
|
"mergeLabel": "MERGE",
|
|
"mergeTargetLabel": "Merge target",
|
|
"reviewCombinedDiff": "Review combined diff",
|
|
"mergeAllSubtasks": "Merge all subtasks",
|
|
"childOutcomesLabel": "SUBTASKS",
|
|
"stepsLabel": "STEPS",
|
|
"addStepPlaceholder": "Add a step...",
|
|
"detailsLabel": "DETAILS",
|
|
"copyDescriptionTip": "Copy description to clipboard",
|
|
"copyFormattedTip": "Copy title, description and open steps",
|
|
"toggleEditPreviewTip": "Toggle edit/preview",
|
|
"previewBtn": "Preview",
|
|
"editBtn": "Edit",
|
|
"descriptionPlaceholder": "Add task details (markdown supported)...",
|
|
"prepTitle": "Daily prep",
|
|
"planDay": "Plan day",
|
|
"prepEmpty": "No prep run today yet — click Plan day",
|
|
"attachments": {
|
|
"sectionLabel": "ATTACHMENTS",
|
|
"dropToAttach": "Drop to attach",
|
|
"addFile": "Add file…",
|
|
"removeTip": "Remove attachment",
|
|
"addedSummary": "✓ Added {0} ({1} file(s))",
|
|
"overLimitError": "Could not add {0}: {1}",
|
|
"invalidNameError": "Could not add {0}: {1}",
|
|
"dropReadError": "Couldn't read the dropped files: {0}",
|
|
"selectIdleTask": "Select an idle task first"
|
|
},
|
|
"sections": {
|
|
"description": "Description",
|
|
"steps": "Steps",
|
|
"files": "Files"
|
|
}
|
|
},
|
|
"agent": {
|
|
"stopTip": "Stop agent",
|
|
"sendToQueue": "Send to queue",
|
|
"sendToQueueTip": "Queue this task for the worker to pick up",
|
|
"removeFromQueue": "Remove from queue",
|
|
"removeFromQueueTip": "Take this task back out of the queue",
|
|
"worktreeLabel": "WORKTREE",
|
|
"copyPathTip": "Copy path",
|
|
"diffLabel": "DIFF",
|
|
"openDiff": "Open diff",
|
|
"worktreeBtn": "Worktree",
|
|
"openWorktreeTip": "Open worktree in file explorer",
|
|
"continue": "Continue",
|
|
"continueTip": "Resume the last session and keep going",
|
|
"resetAndRetry": "Reset & retry",
|
|
"resetAndRetryTip": "Discard the worktree and re-queue the task to run from scratch"
|
|
},
|
|
"notes": {
|
|
"today": "Today",
|
|
"add": "Add",
|
|
"newNotePlaceholder": "New note…",
|
|
"save": "Save",
|
|
"delete": "Delete"
|
|
},
|
|
"session": {
|
|
"chipLive": "LIVE",
|
|
"chipDone": "DONE",
|
|
"chipFailed": "FAILED",
|
|
"reviewContinueTip": "Send this feedback and re-run the task",
|
|
"reviewResetTip": "Discard all changes and reset the task to Idle"
|
|
},
|
|
"missionControl": {
|
|
"openInApp": "Open in app",
|
|
"cancel": "Cancel",
|
|
"detach": "Detach",
|
|
"redock": "Re-dock",
|
|
"windowTitle": "Mission Control",
|
|
"newSession": "New session",
|
|
"clearFinished": "Clear finished",
|
|
"empty": "No running tasks",
|
|
"settings": "Settings",
|
|
"queue": "Queue",
|
|
"blocked": "Blocked",
|
|
"focusMode": "Focus",
|
|
"overviewMode": "Overview",
|
|
"closeSession": "Close session",
|
|
"conptyLaunchFailed": "Couldn't open ConPTY session: {0}",
|
|
"conptyStarting": "Starting session…",
|
|
"mergeHelperTitle": "Merge Helper",
|
|
"submitForReviewFailed": "Couldn't submit for review: {0}",
|
|
"submitForReview": "Submit for review",
|
|
"submitForReviewTip": "Commit this worktree and move the task to review so it can be merged",
|
|
"planningTitleSuffix": " (Planning)",
|
|
"question": {
|
|
"title": "Claude is asking",
|
|
"placeholder": "Type your answer…",
|
|
"send": "Send"
|
|
}
|
|
},
|
|
"modals": {
|
|
"logVisualizer": {
|
|
"title": "WORKER LOGS — LAST 30 MIN",
|
|
"warnErrorOnly": "Warnings & errors only",
|
|
"refresh": "Refresh",
|
|
"empty": "No logs in the last 30 minutes.",
|
|
"count": "{0} entries",
|
|
"footerHint": "logs",
|
|
"openTooltip": "View recent worker logs"
|
|
},
|
|
"about": {
|
|
"title": "ABOUT",
|
|
"version": "Version",
|
|
"data": "Data",
|
|
"logs": "Logs",
|
|
"config": "Config",
|
|
"open": "Open"
|
|
},
|
|
"workerConnection": {
|
|
"title": "WORKER NOT REACHABLE",
|
|
"body": "ClaudeDo can't reach the background worker. It is normally started automatically at logon. You can start it now, or reinstall if the problem persists.",
|
|
"dismiss": "Dismiss",
|
|
"rerunInstaller": "Rerun Installer",
|
|
"startWorker": "Start Worker"
|
|
},
|
|
"listSettings": {
|
|
"title": "LIST SETTINGS",
|
|
"deleteList": "Delete list",
|
|
"sectionGeneral": "GENERAL",
|
|
"name": "Name",
|
|
"workingDirectory": "Working directory",
|
|
"workingDirectoryPlaceholder": "(none)",
|
|
"browse": "Browse...",
|
|
"defaultCommitType": "Default commit type",
|
|
"manualList": "Manual list (reminders)",
|
|
"manualListHint": "New tasks in this list start out manual: no queueing, running or refining, and automation skips them. You can still open a hand-driven session.",
|
|
"sectionAgent": "AGENT",
|
|
"resetAgentSettings": "Reset agent settings"
|
|
},
|
|
"merge": {
|
|
"title": "MERGE WORKTREE",
|
|
"windowTitle": "Merge worktree",
|
|
"cancel": "Cancel",
|
|
"merge": "Merge",
|
|
"targetBranch": "Target branch",
|
|
"removeWorktree": "Remove worktree after merge",
|
|
"commitMessage": "Commit message",
|
|
"conflictedFiles": "Conflicted files:"
|
|
},
|
|
"diff": {
|
|
"title": "DIFF",
|
|
"windowTitle": "Diff",
|
|
"merge": "Merge…",
|
|
"filesHeader": "Files",
|
|
"binary": "Binary file — no text diff",
|
|
"empty": "No content"
|
|
},
|
|
"worktreesOverview": {
|
|
"refresh": "Refresh",
|
|
"cleanupFinished": "Cleanup finished",
|
|
"columnTask": "TASK",
|
|
"columnState": "STATE",
|
|
"columnDiff": "DIFF",
|
|
"columnAge": "AGE",
|
|
"columnOutcome": "RESULT",
|
|
"selectAll": "Select all",
|
|
"targetLabel": "Target",
|
|
"mergeAll": "Merge all",
|
|
"needsResolution": "NEEDS RESOLUTION",
|
|
"resolve": "Resolve",
|
|
"phantom": "phantom",
|
|
"phantomTooltip": "Directory missing on disk",
|
|
"ctxShowDiff": "Show diff",
|
|
"ctxOpenInExplorer": "Open in Explorer",
|
|
"ctxJumpToTask": "Jump to task",
|
|
"ctxMerge": "Merge…",
|
|
"ctxDiscard": "Discard",
|
|
"ctxKeep": "Keep",
|
|
"ctxCopyBranch": "Copy branch",
|
|
"ctxCopyPath": "Copy path",
|
|
"ctxForceRemove": "Force remove"
|
|
},
|
|
"repoImport": {
|
|
"title": "ADD REPOS AS LISTS",
|
|
"windowTitle": "Add repos as lists",
|
|
"cancel": "Cancel",
|
|
"searchPlaceholder": "Search repos…",
|
|
"addFolder": "Add folder…",
|
|
"forgetFolders": "Forget folders",
|
|
"alreadyAdded": "(already added)"
|
|
},
|
|
"mergeHelper": {
|
|
"title": "LET CLAUDE HANDLE IT",
|
|
"windowTitle": "Let Claude handle it",
|
|
"scopeList": "List: {0}",
|
|
"confirm": "Let Claude handle it",
|
|
"cancel": "Cancel",
|
|
"selectAll": "Select all",
|
|
"selectNone": "Select none",
|
|
"empty": "No tasks to hand over — everything is done or cancelled.",
|
|
"columnTask": "TASK",
|
|
"columnStatus": "STATUS"
|
|
},
|
|
"unfinishedPlanning": {
|
|
"title": "UNFINISHED PLANNING SESSION",
|
|
"windowTitle": "Unfinished planning session",
|
|
"discard": "Discard",
|
|
"finalize": "Finalize",
|
|
"resume": "Resume",
|
|
"draftTasksSuffix": " draft task(s) waiting to be finalized."
|
|
},
|
|
"weeklyReport": {
|
|
"title": "WEEKLY REPORT",
|
|
"windowTitle": "Weekly Report",
|
|
"from": "From",
|
|
"to": "To",
|
|
"generate": "Generate",
|
|
"regenerate": "Regenerate",
|
|
"emptyStateHint": "No report for this range yet. Click “Generate”."
|
|
}
|
|
},
|
|
"installer": {
|
|
"nav": {
|
|
"back": "Back",
|
|
"next": "Next →",
|
|
"install": "Install",
|
|
"browse": "Browse...",
|
|
"cancel": "Cancel"
|
|
},
|
|
"welcome": {
|
|
"title": "Welcome",
|
|
"heading": "Install ClaudeDo",
|
|
"subheading": "Choose where to install ClaudeDo, then click Next.",
|
|
"updateSubheading": "Your tasks, config, and database will be preserved. Click Next to continue.",
|
|
"installDirectory": "Install Directory",
|
|
"registerMcp": "Register MCP server with Claude",
|
|
"registerMcpHint": "Runs 'claude mcp add' so Claude can view and manage your ClaudeDo tasks. You can change this later."
|
|
},
|
|
"paths": {
|
|
"title": "Data Paths",
|
|
"subtitle": "Configure where ClaudeDo stores its data.",
|
|
"databasePath": "Database Path",
|
|
"logDirectory": "Log Directory",
|
|
"sandboxRoot": "Sandbox Root",
|
|
"worktreeStrategy": "Worktree Strategy",
|
|
"centralWorktreeRoot": "Central Worktree Root"
|
|
},
|
|
"service": {
|
|
"title": "Worker",
|
|
"subtitle": "Configure the ClaudeDo background worker.",
|
|
"signalRPort": "SignalR Port",
|
|
"queueBackstopInterval": "Queue Backstop Interval (ms)",
|
|
"claudeCliPath": "Claude CLI Path",
|
|
"autostart": "Start worker automatically at logon",
|
|
"autostartHint": "The worker runs as you (the logged-in user) via a per-user logon task, so it can use your Claude CLI authentication.",
|
|
"restartDelay": "Restart Delay (ms)"
|
|
},
|
|
"uiSettings": {
|
|
"title": "UI Settings",
|
|
"subtitle": "Configure the ClaudeDo desktop UI connection settings.",
|
|
"syncWithService": "Sync with service settings",
|
|
"signalRUrl": "SignalR URL",
|
|
"syncHint": "When synced, these values are derived from the Service and Paths pages."
|
|
},
|
|
"install": {
|
|
"title": "Installation",
|
|
"subtitle": "Click Install to build and deploy ClaudeDo.",
|
|
"launch": "Launch ClaudeDo"
|
|
},
|
|
"settings": {
|
|
"removeUserData": "Remove user data (tasks, logs, configs in ~/.todo-app)",
|
|
"uninstall": "Uninstall",
|
|
"repair": "Repair",
|
|
"save": "Save",
|
|
"close": "Close"
|
|
},
|
|
"selfUpdate": {
|
|
"heading": "A newer installer is available",
|
|
"update": "Update",
|
|
"continueAnyway": "Continue anyway"
|
|
}
|
|
},
|
|
"planning": {
|
|
"conflict": {
|
|
"windowTitle": "Merge conflict",
|
|
"modalTitle": "MERGE CONFLICT",
|
|
"openInVsCode": "Open all in VS Code",
|
|
"resolved": "I've resolved — continue",
|
|
"abort": "Abort this merge"
|
|
},
|
|
"diff": {
|
|
"previewCombined": "Preview combined",
|
|
"loading": "Loading…"
|
|
}
|
|
},
|
|
"conflictResolver": {
|
|
"windowTitle": "Resolve merge conflicts",
|
|
"modalTitle": "RESOLVE CONFLICTS",
|
|
"loading": "Loading conflicts…",
|
|
"ours": "MAIN · merge target",
|
|
"result": "RESULT",
|
|
"theirs": "INCOMING · task branch",
|
|
"binaryHint": "Binary files can't be merged here — abort and resolve them in your editor:",
|
|
"prevConflict": "Previous conflict (Shift+F8)",
|
|
"nextConflict": "Next conflict (F8)",
|
|
"conflictMap": "Conflicts in this file — click a marker to jump",
|
|
"acceptOurs": "Add main",
|
|
"acceptTheirs": "Add incoming",
|
|
"removeOurs": "Remove main",
|
|
"removeTheirs": "Remove incoming",
|
|
"continue": "Resolve & continue",
|
|
"abort": "Abort merge"
|
|
},
|
|
"controls": {
|
|
"datePicker": {
|
|
"today": "Today",
|
|
"tomorrow": "Tomorrow",
|
|
"nextMon": "Next Mon",
|
|
"clear": "Clear",
|
|
"time": "Time",
|
|
"done": "Done"
|
|
}
|
|
},
|
|
"shell": {
|
|
"menu": {
|
|
"help": "Help",
|
|
"worker": "Worker",
|
|
"repositories": "Repositories",
|
|
"checkForUpdates": "Check for updates",
|
|
"restartWorker": "Restart worker",
|
|
"worktrees": "Worktrees…",
|
|
"weeklyReport": "Weekly Report…",
|
|
"about": "About…",
|
|
"addRepos": "Add repos as lists…"
|
|
},
|
|
"update": {
|
|
"available": "Update available: v",
|
|
"updateNow": "Update now",
|
|
"dismiss": "Dismiss"
|
|
}
|
|
},
|
|
"vm": {
|
|
"connection": { "online": "Online", "connecting": "Connecting…", "offline": "Offline" },
|
|
"shell": { "restartingWorker": "Restarting worker…" },
|
|
"agentStatus": { "idle": "Idle", "queued": "Queued", "running": "Running", "review": "Review", "children": "Waiting for Subtasks", "done": "Done", "failed": "Failed", "cancelled": "Cancelled" },
|
|
"taskStatus": { "idle": "Idle", "queued": "Queued", "running": "Running", "waitingForReview": "Waiting for Review", "waitingForChildren": "Waiting for Subtasks", "done": "Done", "failed": "Failed", "cancelled": "Cancelled", "parked": "Parked", "interactive": "Interactive" },
|
|
"planningBadge": { "active": "PLANNING", "finalized": "PLANNED" },
|
|
"taskRow": { "createdPrefix": "Created {0}", "stepsText": "{0}/{1} steps" },
|
|
"tasksIsland": { "completedHeader": "COMPLETED", "completedHeaderCount": "COMPLETED · {0}", "planningOpenFailed": "Couldn't open planning session: {0}", "planningResumeFailed": "Couldn't resume planning session: {0}", "pickUpInTerminalFailed": "Pick up in terminal failed: {0}", "approveFailed": "Approve & merge failed: {0}" },
|
|
"diff": { "loadFailed": "Failed to load diff: {0}", "noChanges": "No changes to show.", "unavailable": "Diff no longer available — commit range incomplete." },
|
|
"planningDiff": { "hubError": "Could not build combined preview (hub error).", "conflict": "Cannot build combined preview: subtask {0} conflicts with an earlier subtask ({1} files)." },
|
|
"merge": { "commitMessage": "Merge task: {0}", "workerOfflineBranches": "Worker offline — cannot list branches.", "loadBranchesFailed": "Failed to load branches: {0}", "merged": "Merged.", "conflict": "Merge conflict — target branch restored. Resolve manually or via Continue, then retry.", "blocked": "Blocked: {0}", "unknownStatus": "Unknown status: {0}", "mergeFailed": "Merge failed: {0}" },
|
|
"conflictResolution": { "vsCodeError": "Could not launch VS Code: {0}. Paths are listed above — copy them manually.", "subtaskPrefix": "Conflicts in subtask: {0}", "targetPrefix": "Merging into: {0}" },
|
|
"settingsModal": { "workerOffline": "Worker offline — settings read-only.", "saveFailed": "Save failed: {0}" },
|
|
"onlineInbox": { "workerOffline": "Worker offline — cannot load config.", "saved": "Config saved.", "saveFailed": "Save failed: {0}", "signedIn": "Signed in successfully.", "signedInNoRole": "Signed in, but this account is missing the 'user' role in Zitadel — online sync will be rejected until the role is granted in the ClaudeDo project.", "signInFailed": "Sign-in failed: {0}", "signedOut": "Signed out.", "signOutFailed": "Sign-out failed: {0}" },
|
|
"weeklyReport": { "invalidRange": "Invalid date range.", "generating": "Generating report…", "error": "Error: {0}" },
|
|
"filesTab": { "workerOffline": "Worker offline.", "noneBundled": "No default agents bundled.", "allPresent": "All default agents already present.", "restored": "Restored {0} default agent(s).", "restoreFailed": "Restore failed: {0}", "openFailed": "Open failed: {0}" },
|
|
"sessionSkillsTab": { "installed": "Installed: {0}", "installFailed": "Install failed: {0}", "updated": "Updated.", "updateFailed": "Update failed: {0}", "removed": "Removed.", "removeFailed": "Remove failed: {0}" },
|
|
"worktreesTab": { "workerOffline": "Worker offline.", "removed": "Removed {0} worktree(s).", "blocked": "Cannot force-remove: {0} task(s) still running. Cancel them first.", "removedFrom": "Removed {0} worktree(s) from {1} task(s)." },
|
|
"worktreesOverview": { "titleAll": "Worktrees", "titleList": "Worktrees — {0}", "listFallback": "list", "cleanupFailed": "Cleanup failed.", "removed": "Removed {0} worktree(s).", "discardFailed": "Failed to discard worktree.", "keepFailed": "Failed to keep worktree.", "cannotForceRunning": "Cannot force-remove a running task.", "forceRemoveFailed": "Force remove failed.", "batchProgress": "Merging {0}/{1}…", "batchDone": "Merged {0}, {1} need resolution." },
|
|
"listSettings": { "untitled": "Untitled" },
|
|
"lists": { "localSuffix": "{0} / local", "smartMyDay": "My Day", "smartImportant": "Important", "smartPlanned": "Planned", "virtualQueue": "Queue", "virtualRunning": "Running", "virtualReview": "Review", "newList": "New list" }
|
|
}
|
|
}
|