import type { Translations } from "./types";

export const zh: Translations = {
  common: {
    save: "保存",
    saving: "保存中...",
    cancel: "取消",
    close: "关闭",
    confirm: "确认",
    delete: "删除",
    refresh: "刷新",
    retry: "重试",
    search: "搜索...",
    loading: "加载中...",
    create: "创建",
    creating: "创建中...",
    set: "设置",
    replace: "替换",
    clear: "清除",
    live: "在线",
    off: "离线",
    enabled: "已启用",
    disabled: "已禁用",
    active: "活跃",
    inactive: "未激活",
    unknown: "未知",
    untitled: "无标题",
    none: "无",
    form: "表单",
    noResults: "无结果",
    of: "/",
    page: "页",
    msgs: "消息",
    tools: "工具",
    match: "匹配",
    other: "其他",
    configured: "已配置",
    removed: "已移除",
    failedToToggle: "切换失败",
    failedToRemove: "移除失败",
    failedToReveal: "显示失败",
    collapse: "折叠",
    expand: "展开",
    general: "通用",
    messaging: "消息平台",
    pluginLoadFailed:
      "无法加载此插件的脚本。请检查网络请求（dashboard-plugins/…）以及服务器上的插件路径。",
    pluginNotRegistered: "插件脚本未调用 register()，或执行出错。请打开浏览器控制台查看详情。",
  },

  app: {
    brand: "Hermes Agent",
    brandShort: "HA",
    closeNavigation: "关闭导航",
    closeModelTools: "关闭模型与工具",
    footer: {
      org: "Nous Research",
    },
    activeSessionsLabel: "活跃会话：",
    gatewayStatusLabel: "网关状态：",
    gatewayStrip: {
      failed: "启动失败",
      off: "关闭",
      running: "运行中",
      starting: "启动中",
      stopped: "已停止",
    },
    nav: {
      analytics: "分析",
      chat: "对话",
      config: "配置",
      cron: "定时任务",
      documentation: "文档",
      keys: "密钥",
      logs: "日志",
      models: "模型",
      profiles: "多Agent配置",
      plugins: "插件管理",
      sessions: "会话",
      skills: "技能",
    },
    modelToolsSheetSubtitle: "与工具",
    modelToolsSheetTitle: "模型",
    navigation: "导航",
    openDocumentation: "在新标签页中打开文档",
    openNavigation: "打开导航",
    pluginNavSection: "插件",
    sessionsActiveCount: "{count} 个活跃",
    statusOverview: "状态概览",
    system: "系统",
    webUi: "管理面板",
  },

  status: {
    actionFailed: "操作失败",
    actionFinished: "已完成",
    actions: "操作",
    agent: "代理",
    activeSessions: "活跃会话",
    connected: "已连接",
    connectedPlatforms: "已连接平台",
    disconnected: "已断开",
    error: "错误",
    failed: "失败",
    gateway: "网关",
    gatewayFailedToStart: "网关启动失败",
    lastUpdate: "最后更新",
    noneRunning: "无",
    notRunning: "未运行",
    pid: "进程",
    platformDisconnected: "已断开",
    platformError: "错误",
    recentSessions: "最近会话",
    restartGateway: "重启网关",
    restartingGateway: "正在重启网关…",
    running: "运行中",
    runningRemote: "运行中（远程）",
    startFailed: "启动失败",
    starting: "启动中",
    startedInBackground: "已在后台启动 — 请查看日志",
    stopped: "已停止",
    updateHermes: "更新 Hermes",
    updatingHermes: "正在更新 Hermes…",
    waitingForOutput: "等待输出…",
  },

  sessions: {
    title: "会话",
    searchPlaceholder: "搜索消息内容...",
    noSessions: "暂无会话",
    noMatch: "没有匹配的会话",
    startConversation: "开始对话后将显示在此处",
    noMessages: "暂无消息",
    untitledSession: "无标题会话",
    deleteSession: "删除会话",
    confirmDeleteTitle: "删除会话？",
    confirmDeleteMessage: "此操作将永久删除对话及其所有消息，无法恢复。",
    sessionDeleted: "会话已删除",
    failedToDelete: "删除会话失败",
    resumeInChat: "在对话中继续",
    previousPage: "上一页",
    nextPage: "下一页",
    roles: {
      user: "用户",
      assistant: "助手",
      system: "系统",
      tool: "工具",
    },
  },

  analytics: {
    period: "时间范围：",
    totalTokens: "总 Token 数",
    totalSessions: "总会话数",
    apiCalls: "API 调用",
    dailyTokenUsage: "每日 Token 用量",
    dailyBreakdown: "每日明细",
    perModelBreakdown: "模型用量明细",
    topSkills: "常用技能",
    skill: "技能",
    loads: "代理加载",
    edits: "代理管理",
    lastUsed: "最近使用",
    input: "输入",
    output: "输出",
    total: "总计",
    noUsageData: "该时间段暂无使用数据",
    startSession: "开始会话后将在此显示分析数据",
    date: "日期",
    model: "模型",
    tokens: "Token",
    perDayAvg: "/天 平均",
    acrossModels: "共 {count} 个模型",
    inOut: "输入 {input} / 输出 {output}",
  },

  models: {
    modelsUsed: "使用模型数",
    estimatedCost: "预估费用",
    tokens: "Token",
    sessions: "会话",
    avgPerSession: "平均/会话",
    apiCalls: "API 调用",
    toolCalls: "工具调用",
    noModelsData: "该时间段暂无模型使用数据",
    startSession: "开始会话后将在此显示模型数据",
  },

  logs: {
    title: "日志",
    autoRefresh: "自动刷新",
    file: "文件",
    level: "级别",
    component: "组件",
    lines: "行数",
    noLogLines: "未找到日志记录",
  },

  cron: {
    confirmDeleteMessage: "将从此计划移除该任务，此操作无法撤销。",
    confirmDeleteTitle: "删除定时任务？",
    newJob: "新建定时任务",
    nameOptional: "名称（可选）",
    namePlaceholder: "例如：每日总结",
    prompt: "提示词",
    promptPlaceholder: "代理每次运行时应执行什么操作？",
    schedule: "调度表达式（cron）",
    schedulePlaceholder: "0 9 * * *",
    deliverTo: "投递至",
    scheduledJobs: "已调度任务",
    noJobs: "暂无定时任务。在上方创建一个。",
    last: "上次",
    next: "下次",
    pause: "暂停",
    resume: "恢复",
    triggerNow: "立即触发",
    delivery: {
      local: "本地",
      telegram: "Telegram",
      discord: "Discord",
      slack: "Slack",
      email: "邮件",
    },
  },

  profiles: {
    newProfile: "新建多Agent配置",
    name: "名称",
    namePlaceholder: "例如：coder, writer 等",
    nameRequired: "名称必填",
    nameRule:
      "仅允许小写字母、数字、下划线和短横线；首字符必须是字母或数字；最多 64 个字符。",
    invalidName: "多Agent配置名称非法",
    cloneFromDefault: "从默认多Agent配置克隆配置",
    allProfiles: "多Agent配置列表",
    noProfiles: "暂无多Agent配置。",
    defaultBadge: "默认",
    hasEnv: "已配置 env",
    model: "模型",
    skills: "技能",
    rename: "重命名",
    editSoul: "编辑 SOUL.md",
    soulSection: "SOUL.md（人格 / 系统提示词）",
    soulPlaceholder: "# 这个代理应当如何工作……",
    saveSoul: "保存 SOUL",
    soulSaved: "SOUL.md 已保存",
    openInTerminal: "复制 CLI 命令",
    commandCopied: "已复制到剪贴板",
    copyFailed: "复制失败",
    confirmDeleteTitle: "删除多Agent配置？",
    confirmDeleteMessage:
      "将永久删除多Agent配置 '{name}' — 包括配置、密钥、记忆、会话、技能、定时任务。此操作无法撤销。",
    created: "已创建",
    deleted: "已删除",
    renamed: "已重命名",
  },

  pluginsPage: {
    contextEngineLabel: "上下文引擎",
    dashboardSlots: "面板插槽",
    disableRuntime: "禁用",
    enableAfterInstall: "安装后启用",
    enableRuntime: "启用",
    forceReinstall: "强制重装（先删除已有目录）",
    headline: "发现、安装、启用和更新 Hermes 插件（对齐 `hermes plugins` CLI）。",
    identifierLabel: "Git 地址或 owner/repo",
    inactive: "未启用",
    installBtn: "从 Git 安装",
    installHeading: "从 GitHub / Git 地址安装",
    installHint: "使用 owner/repo 简写或完整的 https:// / git@ 克隆地址。",
    memoryProviderLabel: "记忆提供方",
    missingEnvWarn: "在「密钥」页面设置以下变量后再运行插件：",
    noDashboardTab: "无仪表盘标签",
    openTab: "打开",
    orphanHeading: "仅仪表盘扩展（无匹配的 agent plugin.yaml）",
    pluginListHeading: "已安装插件",
    providerDefaults: "内置 / 默认",
    providersHeading: "运行时提供方插件",
    providersHint:
      "写入 config.yaml：memory.provider（留空为内置）、context.engine。下次会话生效。",
    refreshDashboard: "重新扫描仪表盘扩展",
    removeConfirm: "从 ~/.hermes/plugins/ 删除此插件？",
    removeHint: "仅可移除用户安装在 ~/.hermes/plugins 下的插件。",
    rescanHeading: "SPA 插件注册表",
    rescanHint: "在磁盘新增文件后扫描，使侧边栏载入新 manifest。",
    runtimeHeading: "网关运行时（YAML 插件）",
    saveProviders: "保存提供方设置",
    savedProviders: "提供方设置已保存。",
    sourceBadge: "来源",
    authRequired: "需要认证",
    authRequiredHint: "运行此命令以完成认证：",
    updateGit: "git pull",
    versionBadge: "版本",
    showInSidebar: "在侧边栏显示",
    hideFromSidebar: "从侧边栏隐藏",
  },

  skills: {
    title: "技能",
    searchPlaceholder: "搜索技能和工具集...",
    enabledOf: "已启用 {enabled}/{total}",
    all: "全部",
    categories: "分类",
    filters: "筛选",
    noSkills: "未找到技能。技能从 ~/.hermes/skills/ 加载",
    noSkillsMatch: "没有匹配的技能。",
    skillCount: "{count} 个技能",
    resultCount: "{count} 个结果",
    noDescription: "暂无描述。",
    toolsets: "工具集",
    toolsetLabel: "{name} 工具集",
    noToolsetsMatch: "没有匹配的工具集。",
    setupNeeded: "需要配置",
    disabledForCli: "CLI 已禁用",
    more: "还有 {count} 个",
  },

  config: {
    configPath: "~/.hermes/config.yaml",
    filters: "筛选",
    sections: "分类",
    exportConfig: "导出配置为 JSON",
    importConfig: "从 JSON 导入配置",
    resetDefaults: "恢复默认值",
    resetScopeTooltip: "将{scope}恢复为默认值",
    confirmResetScope: "确定要将{scope}的所有设置恢复为默认值吗？此操作仅更新表单，在按下「保存」按钮前不会写入 config.yaml。",
    resetScopeToast: "{scope}已恢复为默认值 — 请检查并保存以生效",
    rawYaml: "原始 YAML 配置",
    searchResults: "搜索结果",
    fields: "个字段",
    noFieldsMatch: '没有匹配"{query}"的字段',
    configSaved: "配置已保存",
    yamlConfigSaved: "YAML 配置已保存",
    failedToSave: "保存失败",
    failedToSaveYaml: "YAML 保存失败",
    failedToLoadRaw: "加载原始配置失败",
    configImported: "配置已导入 — 请检查后保存",
    invalidJson: "无效的 JSON 文件",
    categories: {
      general: "通用",
      agent: "代理",
      terminal: "终端",
      display: "显示",
      delegation: "委托",
      memory: "记忆",
      compression: "压缩",
      security: "安全",
      browser: "浏览器",
      voice: "语音",
      tts: "文字转语音",
      stt: "语音转文字",
      logging: "日志",
      discord: "Discord",
      auxiliary: "辅助",
    },
  },

  env: {
    changesNote: "更改会立即保存到磁盘。活跃会话将自动获取新密钥。",
    confirmClearMessage: "该变量的已存值将从 .env 文件中删除。无法在此界面撤销。",
    confirmClearTitle: "清除此密钥？",
    description: "管理存储在以下位置的 API 密钥和凭据",
    hideAdvanced: "隐藏高级选项",
    showAdvanced: "显示高级选项",
    llmProviders: "LLM 提供商",
    providersConfigured: "已配置 {configured}/{total} 个提供商",
    getKey: "获取密钥",
    notConfigured: "{count} 个未配置",
    notSet: "未设置",
    keysCount: "{count} 个密钥",
    enterValue: "输入值...",
    replaceCurrentValue: "替换当前值（{preview}）",
    showValue: "显示实际值",
    hideValue: "隐藏值",
  },

  oauth: {
    title: "提供商登录（OAuth）",
    providerLogins: "提供商登录（OAuth）",
    description: "已连接 {connected}/{total} 个 OAuth 提供商。登录流程目前通过 CLI 运行；点击「复制命令」并粘贴到终端中进行设置。",
    connected: "已连接",
    expired: "已过期",
    notConnected: "未连接。在终端中运行 {command}。",
    runInTerminal: "在终端中。",
    noProviders: "未检测到支持 OAuth 的提供商。",
    login: "登录",
    disconnect: "断开连接",
    managedExternally: "外部管理",
    copied: "已复制 ✓",
    cli: "CLI",
    copyCliCommand: "复制 CLI 命令（用于外部/备用方式）",
    connect: "连接",
    sessionExpires: "会话将在 {time} 后过期",
    initiatingLogin: "正在启动登录流程…",
    exchangingCode: "正在交换令牌…",
    connectedClosing: "已连接！正在关闭…",
    loginFailed: "登录失败。",
    sessionExpired: "会话已过期。点击重试以开始新的登录。",
    reOpenAuth: "重新打开授权页面",
    reOpenVerification: "重新打开验证页面",
    submitCode: "提交代码",
    pasteCode: "粘贴授权代码（包含 #state 后缀也可以）",
    waitingAuth: "等待您在浏览器中授权…",
    enterCodePrompt: "已在新标签页中打开。如果需要，请输入以下代码：",
    pkceStep1: "已在新标签页打开 claude.ai。请登录并点击「授权」。",
    pkceStep2: "复制授权后显示的授权代码。",
    pkceStep3: "将代码粘贴到下方并提交。",
    flowLabels: {
      pkce: "浏览器登录（PKCE）",
      device_code: "设备代码",
      external: "外部 CLI",
    },
    expiresIn: "{time}后过期",
  },

  language: {
    switchTo: "切换到英文",
  },

  theme: {
    title: "主题",
    switchTheme: "切换主题",
  },
};
