{
  "buttons": {
    "save": "Save",
    "cancel": "Cancel",
    "delete": "Delete",
    "create": "Create",
    "edit": "Edit",
    "close": "Close",
    "confirm": "Confirm",
    "submit": "Submit",
    "retry": "Retry",
    "refresh": "Refresh",
    "search": "Search",
    "clear": "Clear",
    "copy": "Copy",
    "download": "Download",
    "upload": "Upload",
    "browse": "Browse"
  },
  "tabs": {
    "home": "Home",
    "chat": "Agent",
    "alwaysOn": "Always-On",
    "shell": "Shell",
    "files": "Files",
    "git": "Source Control",
    "tasks": "Tasks",
    "dashboard": "Routing",
    "memory": "Memory",
    "skills": "Skills"
  },
  "skillsTab": {
    "pickProject": "Open a project to manage its skills.",
    "generalChat": "General chat — user-scope skills only",
    "refresh": "Refresh",
    "newSkill": "New",
    "loading": "Loading…",
    "empty": "No skills yet. Click \"New\" to install or create one.",
    "selectHint": "Pick a skill on the left to view or edit its SKILL.md.",
    "projectScope": "Project Skills",
    "userScope": "User Skills",
    "save": "Save",
    "saving": "Saving…",
    "savedSuccess": "Saved",
    "delete": "Delete",
    "deletedSuccess": "Deleted",
    "revert": "Revert",
    "confirmDelete": "Delete this skill? This will remove the entire folder.",
    "discardUnsaved": "Discard unsaved changes?",
    "newTitle": "New Skill",
    "close": "Close",
    "tabInstall": "Install from ClawHub",
    "tabImport": "Import folder",
    "tabCreate": "Write my own",
    "importSource": "Source folder",
    "importSourceHint": "Absolute path to a folder containing SKILL.md. Tilde (~) is expanded server-side.",
    "importSourceHintBoth": "Pick a folder via the native dialog, or paste an absolute path. ~ is expanded server-side.",
    "pickFolder": "Pick folder…",
    "files": "files",
    "complianceCheck": "Compliance check",
    "complianceClean": "All checks passed.",
    "symlinkUnavailable": "— unavailable for picker uploads (no source path on disk).",
    "importSlug": "Slug (target folder name)",
    "importSlugHint": "Defaults to the source folder name. Edit to override.",
    "importMode": "Import mode",
    "importModeCopy": "Copy",
    "importModeCopyHint": "— independent copy, edits live in the skills folder.",
    "importModeSymlink": "Symlink",
    "importModeSymlinkHint": "— edits in the source folder propagate live; deleting the source breaks the skill.",
    "importForce": "Overwrite if exists",
    "importEnableForce": "Enable \"Overwrite\" to replace it.",
    "importAction": "Import skill",
    "importing": "Importing…",
    "scan": "Scan",
    "scanning": "Scanning…",
    "foundSkills": "Found {{count}} skills in {{total}} subfolders",
    "noSkillsFound": "No skills found in this folder.",
    "selectAll": "Select All ({{count}})",
    "importNSkills": "Import {{count}} skills",
    "batchProgress": "Importing {{current}}/{{total}}…",
    "batchComplete": "Batch import complete: {{success}} succeeded, {{failed}} failed",
    "batchDone": "Done",
    "noSkillMd": "No SKILL.md",
    "alreadyExists": "already exists",
    "scope": "Scope",
    "scopeUser": "User",
    "scopeProject": "Project",
    "searchPlaceholder": "Search clawhub.com…",
    "searchHint": "Type to search clawhub.com.",
    "noResults": "No results.",
    "install": "Install",
    "installing": "Installing…",
    "installForce": "Install (force)",
    "installedSuccess": "Installed {{name}}",
    "flaggedSuspicious": "\"{{slug}}\" is flagged as suspicious by VirusTotal. Click again to install with --force.",
    "fieldSlug": "Slug",
    "slugHint": "Folder name, e.g. my-skill",
    "fieldName": "Display name",
    "fieldNamePlaceholder": "Optional, defaults to slug",
    "fieldDescription": "Description",
    "descHint": "Shown in the slash menu — describe what this skill does and when to invoke it.",
    "fieldBody": "Initial body (Markdown)",
    "bodyHint": "Optional. Edit in detail later from the main view.",
    "create": "Create skill",
    "creating": "Creating…"
  },
  "newSessionInProject": "New session",
  "deleteProject": "Delete project",
  "status": {
    "loading": "Loading...",
    "success": "Success",
    "error": "Error",
    "failed": "Failed",
    "pending": "Pending",
    "completed": "Completed",
    "inProgress": "In Progress"
  },
  "messages": {
    "savedSuccessfully": "Saved successfully",
    "deletedSuccessfully": "Deleted successfully",
    "updatedSuccessfully": "Updated successfully",
    "operationFailed": "Operation failed",
    "networkError": "Network error. Please check your connection.",
    "unauthorized": "Unauthorized. Please log in.",
    "notFound": "Not found",
    "invalidInput": "Invalid input",
    "requiredField": "This field is required",
    "unknownError": "An unknown error occurred"
  },
  "navigation": {
    "settings": "Settings",
    "home": "Home",
    "back": "Back",
    "next": "Next",
    "previous": "Previous",
    "logout": "Logout"
  },
  "common": {
    "language": "Language",
    "theme": "Theme",
    "darkMode": "Dark Mode",
    "lightMode": "Light Mode",
    "name": "Name",
    "description": "Description",
    "enabled": "Enabled",
    "disabled": "Disabled",
    "optional": "Optional",
    "version": "Version",
    "select": "Select",
    "selectAll": "Select All",
    "deselectAll": "Deselect All"
  },
  "time": {
    "justNow": "Just now",
    "minutesAgo": "{{count}} mins ago",
    "hoursAgo": "{{count}} hours ago",
    "daysAgo": "{{count}} days ago",
    "yesterday": "Yesterday"
  },
  "fileOperations": {
    "newFile": "New File",
    "newFolder": "New Folder",
    "rename": "Rename",
    "move": "Move",
    "copyPath": "Copy Path",
    "openInEditor": "Open in Editor"
  },
  "mainContent": {
    "loading": "Loading PilotDeck",
    "settingUpWorkspace": "Setting up your workspace...",
    "chooseProject": "Choose Your Project",
    "selectProjectDescription": "Select a project from the sidebar to start coding with PilotDeck. Each project contains your chat sessions and file history.",
    "tip": "Tip",
    "createProjectMobile": "Tap the menu button above to access projects",
    "createProjectDesktop": "Create a new project by clicking the folder icon in the sidebar",
    "newSession": "New Session",
    "untitledSession": "Untitled Session",
    "projectFiles": "Project Files"
  },
  "alwaysOn": {
    "title": "Always-On Overview",
    "description": "Review discovery plans and scheduled cron jobs for the current project in one place.",
    "lastUpdated": "Last updated: {{timestamp}}",
    "loadingTitle": "Loading Always-On data",
    "loadingDescription": "Reading discovery plans and scheduled tasks for the current project.",
    "emptyTitle": "No scheduled tasks yet",
    "emptyDescription": "This project does not currently have any visible durable cron jobs or session-scoped tasks.",
    "summary": {
      "total": "Total jobs",
      "recurring": "Recurring jobs",
      "failed": "Failed recently"
    },
    "status": {
      "draft": "Draft",
      "ready": "Ready",
      "queued": "Queued",
      "scheduled": "Scheduled",
      "running": "Running",
      "completed": "Completed",
      "failed": "Failed",
      "superseded": "Superseded",
      "unknown": "Unknown"
    },
    "actions": {
      "viewDetails": "View details for {{id}}",
      "discoverTasks": "Discover tasks",
      "runNow": "Run now"
    },
    "flags": {
      "durable": "Durable",
      "sessionScoped": "Session",
      "oneShot": "One-shot",
      "recurring": "Recurring",
      "manualOnly": "Manual only",
      "permanent": "Permanent"
    },
    "fields": {
      "scope": "Scope",
      "type": "Type",
      "kind": "Kind",
      "jobId": "Task ID",
      "prompt": "Prompt",
      "cron": "Cron schedule",
      "status": "Status",
      "createdAt": "Created",
      "lastFiredAt": "Last fired",
      "originSessionId": "Origin session",
      "transcriptKey": "Transcript key",
      "lastActivity": "Last activity",
      "latestRunSummary": "Latest run summary",
      "latestRunTaskId": "Latest run task ID",
      "latestRunTranscript": "Latest run transcript",
      "outputFile": "Output file"
    },
    "detail": {
      "title": "Task details",
      "oneShotRunNowHint": "Run now executes this one-shot task immediately without changing the original scheduled trigger. It can still fire again at the scheduled time.",
      "missingTitle": "Task no longer available",
      "missingDescription": "This task may have been deleted or become unavailable since the overview was loaded.",
      "noLatestRun": "This task does not have a recorded background run yet.",
      "sections": {
        "definition": "Task definition",
        "latestRun": "Latest run"
      }
    },
    "values": {
      "notUpdated": "Not updated yet",
      "notAvailable": "Not available"
    },
    "confirmations": {
      "delete": "Delete scheduled task {{id}}?"
    },
    "feedback": {
      "deleted": "Deleted scheduled task {{id}}.",
      "runNowStarted": "Started {{id}} immediately.",
      "alreadyRunning": "Task {{id}} is already running."
    },
    "errors": {
      "loadFailed": "Failed to load Always-On data.",
      "deleteFailed": "Failed to delete cron job.",
      "runNowFailed": "Failed to run cron job immediately."
    },
    "discovery": {
      "title": "Discovery plans",
      "description": "Structured plans generated by Always-On discovery before execution.",
      "emptyTitle": "No discovery plans yet",
      "emptyDescription": "Run discovery to generate structured plans for follow-up work.",
      "summary": {
        "running": "Running plans"
      },
      "actions": {
        "viewDetails": "View details",
        "openSession": "Open session",
        "archive": "Archive"
      },
      "fields": {
        "title": "Title",
        "summary": "Summary",
        "rationale": "Rationale",
        "updatedAt": "Updated",
        "planFile": "Plan file",
        "sourceSession": "Discovery session",
        "executionSession": "Execution session",
        "executionStartedAt": "Execution started",
        "executionLastActivityAt": "Last activity",
        "latestSummary": "Latest summary",
        "contextRefsWorkingDirectory": "Workspace signals",
        "contextRefsMemory": "Memory references",
        "contextRefsPlans": "Related plans",
        "contextRefsCron": "Related cron jobs",
        "contextRefsChats": "Recent chats"
      },
      "detail": {
        "meta": "Plan metadata",
        "plan": "Plan content",
        "noContent": "This discovery plan does not have stored markdown content.",
        "missingTitle": "Discovery plan no longer available",
        "missingDescription": "This plan may have been updated or archived since the overview was loaded."
      },
      "feedback": {
        "executionQueued": "Queued discovery plan {{id}} for execution.",
        "archived": "Archived discovery plan {{id}}."
      },
      "errors": {
        "executeFailed": "Failed to execute discovery plan.",
        "archiveFailed": "Failed to archive discovery plan."
      }
    },
    "cron": {
      "title": "Scheduled cron jobs",
      "description": "Existing durable and session-scoped cron tasks for this project."
    }
  },
  "fileTree": {
    "loading": "Loading files...",
    "files": "Files",
    "simpleView": "Simple view",
    "compactView": "Compact view",
    "detailedView": "Detailed view",
    "searchPlaceholder": "Search files and folders...",
    "clearSearch": "Clear search",
    "name": "Name",
    "size": "Size",
    "modified": "Modified",
    "permissions": "Permissions",
    "noFilesFound": "No files found",
    "checkProjectPath": "Check if the project path is accessible",
    "noMatchesFound": "No matches found",
    "tryDifferentSearch": "Try a different search term or clear the search",
    "justNow": "just now",
    "minAgo": "{{count}} min ago",
    "hoursAgo": "{{count}} hours ago",
    "daysAgo": "{{count}} days ago",
    "newFile": "New File (Cmd+N)",
    "newFolder": "New Folder (Cmd+Shift+N)",
    "refresh": "Refresh",
    "collapseAll": "Collapse All",
    "context": {
      "rename": "Rename",
      "delete": "Delete",
      "copyPath": "Copy Path",
      "download": "Download",
      "newFile": "New File",
      "newFolder": "New Folder",
      "refresh": "Refresh",
      "menuLabel": "File context menu",
      "loading": "Loading..."
    }
  },
  "projectWizard": {
    "title": "Create New Project",
    "steps": {
      "type": "Type",
      "configure": "Configure",
      "confirm": "Confirm"
    },
    "step1": {
      "question": "Do you already have a workspace, or would you like to create a new one?",
      "existing": {
        "title": "Existing Workspace",
        "description": "I already have a workspace on my server and just need to add it to the project list"
      },
      "new": {
        "title": "New Workspace",
        "description": "Create a new workspace, optionally clone from a GitHub repository"
      }
    },
    "step2": {
      "existingPath": "Workspace Path",
      "newPath": "Workspace Path",
      "existingPlaceholder": "/path/to/existing/workspace",
      "newPlaceholder": "/path/to/new/workspace",
      "existingHelp": "Full path to your existing workspace directory",
      "newHelp": "Full path to your workspace directory",
      "githubUrl": "GitHub URL (Optional)",
      "githubPlaceholder": "https://github.com/username/repository",
      "githubHelp": "Optional: provide a GitHub URL to clone a repository",
      "githubAuth": "GitHub Authentication (Optional)",
      "githubAuthHelp": "Only required for private repositories. Public repos can be cloned without authentication.",
      "loadingTokens": "Loading stored tokens...",
      "storedToken": "Stored Token",
      "newToken": "New Token",
      "nonePublic": "None (Public)",
      "selectToken": "Select Token",
      "selectTokenPlaceholder": "-- Select a token --",
      "tokenPlaceholder": "ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
      "tokenHelp": "This token will be used only for this operation",
      "publicRepoInfo": "Public repositories don't require authentication. You can skip providing a token if cloning a public repo.",
      "noTokensHelp": "No stored tokens available. You can add tokens in Settings → API Keys for easier reuse.",
      "optionalTokenPublic": "GitHub Token (Optional for Public Repos)",
      "tokenPublicPlaceholder": "ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (leave empty for public repos)"
    },
    "step3": {
      "reviewConfig": "Review Your Configuration",
      "workspaceType": "Workspace Type:",
      "existingWorkspace": "Existing Workspace",
      "newWorkspace": "New Workspace",
      "path": "Path:",
      "cloneFrom": "Clone From:",
      "authentication": "Authentication:",
      "usingStoredToken": "Using stored token:",
      "usingProvidedToken": "Using provided token",
      "noAuthentication": "No authentication",
      "sshKey": "SSH Key",
      "existingInfo": "The workspace will be added to your project list and will be available for PilotDeck sessions.",
      "newWithClone": "The repository will be cloned from this folder.",
      "newEmpty": "The workspace will be added to your project list and will be available for PilotDeck sessions.",
      "cloningRepository": "Cloning repository..."
    },
    "buttons": {
      "cancel": "Cancel",
      "back": "Back",
      "next": "Next",
      "createProject": "Create Project",
      "creating": "Creating...",
      "cloning": "Cloning..."
    },
    "errors": {
      "selectType": "Please select whether you have an existing workspace or want to create a new one",
      "providePath": "Please provide a workspace path",
      "failedToCreate": "Failed to create workspace",
      "failedToCreateFolder": "Failed to create folder"
    }
  },
  "notifications": {
    "genericTool": "a tool",
    "codes": {
      "generic": {
        "info": {
          "title": "Notification"
        }
      },
      "permission": {
        "required": {
          "title": "Action Required",
          "body": "{{toolName}} is waiting for your decision."
        }
      },
      "run": {
        "stopped": {
          "title": "Run Stopped",
          "body": "Reason: {{reason}}"
        },
        "failed": {
          "title": "Run Failed"
        }
      },
      "agent": {
        "notification": {
          "title": "Agent Notification"
        }
      }
    }
  },
  "versionUpdate": {
    "title": "Update Available",
    "newVersionReady": "A new version is ready",
    "currentVersion": "Current Version",
    "latestVersion": "Latest Version",
    "whatsNew": "What's New:",
    "viewFullRelease": "View full release",
    "updateProgress": "Update Progress:",
    "manualUpgrade": "Manual upgrade:",
    "npmUpgradeCommand": "git pull && npm run build && (cd ui && npm run build)",
    "manualUpgradeHint": "Or click \"Update Now\" to run the update automatically.",
    "updateCompleted": "Update completed successfully!",
    "restartServer": "Please restart the server to apply changes.",
    "updateFailed": "Update failed",
    "buttons": {
      "close": "Close",
      "later": "Later",
      "copyCommand": "Copy Command",
      "updateNow": "Update Now",
      "updating": "Updating..."
    },
    "ariaLabels": {
      "closeModal": "Close version upgrade modal",
      "showSidebar": "Show sidebar",
      "settings": "Settings",
      "updateAvailable": "Update available",
      "closeSidebar": "Close sidebar"
    }
  }
}
