mirror of
https://github.com/siteboon/claudecodeui.git
synced 2026-06-25 04:13:51 +08:00
When the package is updated on disk but the long-lived server process is not restarted, the new frontend bundle (served from disk) talks to the old running backend. New DB-backed features then fail silently — e.g. deleting/archiving a session appears to do nothing — because the new schema/routes only take effect on restart. Nothing currently detects this skew: useVersionCheck only compares the frontend's build-time version against the latest GitHub release. This exposes the running server's version (captured once at startup) via /health, compares it to the frontend's build-time version in useVersionCheck, and shows a "restart required" banner in the sidebar (and a small indicator in the collapsed sidebar) when they differ. - server: add `version` (RUNNING_VERSION, read once at startup) to /health - useVersionCheck: return `restartRequired` / `runningVersion` - SidebarFooter / SidebarCollapsed: surface a restart-required banner - i18n: add `version.restartRequired` to all 10 sidebar locales Verified with `tsc --noEmit` (client + server) and eslint. Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Co-authored-by: Simos Mikelatos <simosmik@gmail.com>
145 lines
5.5 KiB
JSON
145 lines
5.5 KiB
JSON
{
|
|
"projects": {
|
|
"title": "Projects",
|
|
"newProject": "New Project",
|
|
"deleteProject": "Remove Project",
|
|
"renameProject": "Rename Project",
|
|
"noProjects": "No projects found",
|
|
"loadingProjects": "Loading projects...",
|
|
"searchPlaceholder": "Search projects...",
|
|
"projectNamePlaceholder": "Project name",
|
|
"starred": "Starred",
|
|
"all": "All",
|
|
"untitledSession": "Untitled Session",
|
|
"newSession": "New Session",
|
|
"codexSession": "Codex Session",
|
|
"fetchingProjects": "Fetching your Claude projects and sessions",
|
|
"projects": "projects",
|
|
"noMatchingProjects": "No matching projects",
|
|
"tryDifferentSearch": "Try adjusting your search term",
|
|
"runClaudeCli": "Run Claude CLI in a project directory to get started"
|
|
},
|
|
"app": {
|
|
"title": "CloudCLI",
|
|
"subtitle": "AI coding assistant interface"
|
|
},
|
|
"sessions": {
|
|
"title": "Sessions",
|
|
"newSession": "New Session",
|
|
"deleteSession": "Delete Session",
|
|
"renameSession": "Rename Session",
|
|
"noSessions": "No sessions yet",
|
|
"loadingSessions": "Loading sessions...",
|
|
"unnamed": "Unnamed",
|
|
"loading": "Loading...",
|
|
"showMore": "Show more sessions"
|
|
},
|
|
"tooltips": {
|
|
"viewEnvironments": "View Environments",
|
|
"hideSidebar": "Hide sidebar",
|
|
"createProject": "Create new project",
|
|
"refresh": "Refresh projects and sessions (Ctrl+R)",
|
|
"renameProject": "Rename project (F2)",
|
|
"deleteProject": "Remove project from sidebar (Delete)",
|
|
"addToFavorites": "Add to favorites",
|
|
"removeFromFavorites": "Remove from favorites",
|
|
"editSessionName": "Manually edit session name",
|
|
"deleteSession": "Delete this session permanently",
|
|
"activeSessionIndicator": "Recently active session (last 10 minutes)",
|
|
"save": "Save",
|
|
"cancel": "Cancel",
|
|
"clearSearch": "Clear search",
|
|
"openCommandPalette": "Open command palette"
|
|
},
|
|
"navigation": {
|
|
"chat": "Chat",
|
|
"files": "Files",
|
|
"git": "Git",
|
|
"terminal": "Terminal",
|
|
"tasks": "Tasks"
|
|
},
|
|
"actions": {
|
|
"refresh": "Refresh",
|
|
"settings": "Settings",
|
|
"collapseAll": "Collapse All",
|
|
"expandAll": "Expand All",
|
|
"cancel": "Cancel",
|
|
"save": "Save",
|
|
"delete": "Delete",
|
|
"rename": "Rename",
|
|
"joinCommunity": "Join Community",
|
|
"reportIssue": "Report Issue",
|
|
"starOnGithub": "Star on GitHub"
|
|
},
|
|
"branding": {
|
|
"openSource": "Open Source"
|
|
},
|
|
"status": {
|
|
"active": "Active",
|
|
"inactive": "Inactive",
|
|
"thinking": "Thinking...",
|
|
"error": "Error",
|
|
"aborted": "Aborted",
|
|
"unknown": "Unknown"
|
|
},
|
|
"time": {
|
|
"justNow": "Just now",
|
|
"oneMinuteAgo": "1 min ago",
|
|
"minutesAgo": "{{count}} mins ago",
|
|
"oneHourAgo": "1 hour ago",
|
|
"hoursAgo": "{{count}} hours ago",
|
|
"oneDayAgo": "1 day ago",
|
|
"daysAgo": "{{count}} days ago"
|
|
},
|
|
"messages": {
|
|
"deleteConfirm": "Are you sure you want to delete this?",
|
|
"renameSuccess": "Renamed successfully",
|
|
"deleteSuccess": "Deleted successfully",
|
|
"errorOccurred": "An error occurred",
|
|
"deleteSessionConfirm": "Are you sure you want to delete this session? This action cannot be undone.",
|
|
"deleteProjectConfirm": "Remove this project from the sidebar? Your project files, memories, and session data will not be deleted.",
|
|
"enterProjectPath": "Please enter a project path",
|
|
"deleteSessionFailed": "Failed to delete session. Please try again.",
|
|
"deleteSessionError": "Error deleting session. Please try again.",
|
|
"renameSessionFailed": "Failed to rename session. Please try again.",
|
|
"renameSessionError": "Error renaming session. Please try again.",
|
|
"deleteProjectFailed": "Failed to remove project. Please try again.",
|
|
"deleteProjectError": "Error removing project. Please try again.",
|
|
"createProjectFailed": "Failed to create project. Please try again.",
|
|
"createProjectError": "Error creating project. Please try again.",
|
|
"updateProjectError": "Error updating project. Please try again.",
|
|
"refreshError": "Failed to refresh. Please try again.",
|
|
"restoreProjectFailed": "Failed to restore project. Please try again.",
|
|
"restoreProjectError": "Error restoring project. Please try again.",
|
|
"restoreSessionFailed": "Failed to restore session. Please try again.",
|
|
"restoreSessionError": "Error restoring session. Please try again."
|
|
},
|
|
"version": {
|
|
"updateAvailable": "Update available",
|
|
"restartRequired": "Update installed — restart the server to apply"
|
|
},
|
|
"search": {
|
|
"modeProjects": "Projects",
|
|
"modeConversations": "Conversations",
|
|
"conversationsPlaceholder": "Search in conversations...",
|
|
"searching": "Searching...",
|
|
"noResults": "No results found",
|
|
"tryDifferentQuery": "Try a different search query",
|
|
"matches_one": "{{count}} match",
|
|
"matches_other": "{{count}} matches",
|
|
"projectsScanned_one": "{{count}} project scanned",
|
|
"projectsScanned_other": "{{count}} projects scanned"
|
|
},
|
|
"deleteConfirmation": {
|
|
"deleteProject": "Remove Project",
|
|
"deleteSession": "Delete Session",
|
|
"confirmDelete": "What would you like to do with",
|
|
"sessionCount_one": "This project contains {{count}} conversation.",
|
|
"sessionCount_other": "This project contains {{count}} conversations.",
|
|
"removeFromSidebar": "Remove from sidebar only",
|
|
"deleteAllData": "Delete all data permanently",
|
|
"allConversationsDeleted": "The project will be removed from the sidebar. Your files, memories, and session data will be preserved.",
|
|
"cannotUndo": "You can re-add the project later."
|
|
}
|
|
}
|