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: "会话",
    history: "历史",
    overview: "概览",
    searchPlaceholder: "搜索消息内容...",
    noSessions: "暂无会话",
    noMatch: "没有匹配的会话",
    startConversation: "开始对话后将显示在此处",
    noMessages: "暂无消息",
    untitledSession: "无标题会话",
    deleteSession: "删除会话",
    confirmDeleteTitle: "删除会话？",
    confirmDeleteMessage: "此操作将永久删除对话及其所有消息，无法恢复。",
    sessionDeleted: "会话已删除",
    failedToDelete: "删除会话失败",
    deleteEmpty: "删除空会话",
    deleteEmptyConfirmTitle: "删除空会话？",
    deleteEmptyConfirmMessage:
      "这将永久删除 {count} 个没有消息的会话。活动和已归档的会话将被跳过。此操作无法撤销。",
    emptySessionsDeleted: "已删除 {count} 个空会话",
    failedToDeleteEmpty: "删除空会话失败",
    selectSession: "选择会话",
    selectAllOnPage: "全选本页",
    clearSelection: "清除选择",
    selectedCount: "已选择 {count} 个",
    deleteSelected: "删除 {count} 个",
    deleteSelectedConfirmTitle: "删除 {count} 个会话？",
    deleteSelectedConfirmMessage:
      "此操作将永久删除所选的 {count} 个会话及其所有消息。无法撤销。",
    selectedSessionsDeleted: "已删除 {count} 个会话",
    failedToDeleteSelected: "删除所选会话失败",
    resumeInChat: "在对话中继续",
    newChat: "新对话",
    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 * * *",
    scheduleMode: "调度",
    scheduleModes: {
      interval: "重复间隔",
      daily: "每天",
      weekly: "每周",
      monthly: "每月",
      once: "仅一次",
      custom: "自定义（cron 表达式）",
      intervalEvery: "每",
      intervalUnit: "单位",
      unitMinutes: "分钟",
      unitHours: "小时",
      unitDays: "天",
      timeOfDay: "时间",
      weekdays: "星期",
      weekdaysShort: ["日", "一", "二", "三", "四", "五", "六"],
      dayOfMonth: "日期",
      onceAt: "执行时间",
      customLabel: "cron 表达式",
      customPlaceholder: "0 9 * * *",
      customHint: "五字段 cron 表达式（分、时、日、月、星期）。",
      preview: "发送为",
      previewEmpty: "（未完成）",
    },
    scheduleDescribe: {
      none: "—",
      everyMinutes: "每 {n} 分钟",
      everyHours: "每 {n} 小时",
      everyDays: "每 {n} 天",
      dailyAt: "每天 {time}",
      weeklyAt: "每周 {days} {time}",
      monthlyAt: "每月{day} {time}",
      onceAt: "{time} 执行一次",
    },
    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配置名称非法",    cloneFrom: "从配置文件克隆",
    cloneFromNone: "无（空白）",
    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: "安装",
    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: "显示高级选项",
    showLess: "显示更少",
    showMore: "显示更多",
    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: "复制",
    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: "切换主题",
  },

  achievements: {
    hero: {
      kicker: "Agentic Gamerscore",
      title: "Hermes Achievements",
      subtitle:
        "从真实会话历史中获得的 Hermes 可收集徽章。已知尚未达成的成就显示为「已发现」；秘密成就在首次出现匹配行为之前保持隐藏。",
      scan_subtitle:
        "正在扫描 Hermes 会话历史。在历史记录较多时，首次扫描可能需要 5–10 秒。",
    },
    actions: {
      rescan: "重新扫描",
    },
    stats: {
      unlocked: "已解锁",
      unlocked_hint: "获得的徽章",
      discovered: "已发现",
      discovered_hint: "已知，但尚未获得",
      secrets: "秘密",
      secrets_hint: "在首次信号出现前保持隐藏",
      highest_tier: "最高等级",
      highest_tier_hint: "Copper → Silver → Gold → Diamond → Olympian",
      latest: "最新",
      latest_hint_empty: "多多运行 Hermes",
      none_yet: "暂无",
    },
    state: {
      unlocked: "已解锁",
      discovered: "已发现",
      secret: "秘密",
    },
    tier: {
      target: "目标 {tier}",
      hidden: "隐藏",
      complete: "已完成",
      objective: "目标",
    },
    progress: {
      hidden: "隐藏",
    },
    scan: {
      building_headline: "正在构建成就档案…",
      building_detail:
        "正在读取会话、工具调用、模型元数据和解锁状态。",
      starting_headline: "正在开始成就扫描…",
      progress_detail:
        "已扫描 {scanned} / {total} 个会话 · {pct}%。随着更多历史流入，徽章会陆续解锁。",
      idle_detail:
        "正在读取会话、工具调用、模型元数据和解锁状态。徽章解锁后将在此显示。",
    },
    guide: {
      tiers_header: "等级",
      secret_header: "秘密成就",
      secret_body:
        "秘密成就会隐藏其确切触发条件。一旦 Hermes 检测到相关信号，卡片将变为「已发现」并显示其要求。",
      scan_status_header: "扫描状态",
      scan_status_body:
        "Hermes 正在对本地历史进行一次扫描，之后卡片会自动出现。即使这需要几秒钟，也没有卡住。",
      what_scanned_header: "扫描内容",
      what_scanned_body:
        "会话、工具调用、模型元数据、错误、成就和本地解锁状态。",
    },
    card: {
      share_title: "分享此成就",
      share_label: "分享 {name}",
      share_text: "分享",
      how_to_reveal: "如何揭示",
      what_counts: "计入条件",
      evidence_label: "证据",
      evidence_session_fallback: "会话",
      no_evidence: "暂无证据",
    },
    latest: {
      header: "最近解锁",
    },
    empty: {
      no_secrets_header: "本次扫描中已没有隐藏的秘密。",
      no_secrets_body:
        "提示：秘密通常源于异常失败或高级用户行为模式 —— 端口冲突、权限阻拦、缺少环境变量、YAML 错误、Docker 冲突、回滚或检查点使用、缓存命中，或在大量红色错误后做出的小小修复。",
    },
    filters: {
      all_categories: "全部",
      visibility_all: "全部",
      visibility_unlocked: "已解锁",
      visibility_discovered: "已发现",
      visibility_secret: "秘密",
    },
    share: {
      dialog_label: "分享成就",
      header: "分享：{name}",
      close: "关闭",
      rendering: "渲染中…",
      card_alt: "{name} 分享卡片",
      error_generic: "发生错误。",
      x_title: "在 X 中打开预填好的帖子",
      x_button: "在 X 上分享",
      copy_title: "复制图片以粘贴到你的帖子中",
      copy_button: "复制图片",
      copied: "已复制 ✓",
      download_button: "下载 PNG",
      hint:
        "「在 X 上分享」会在新标签页中打开预填好的帖子。如果想附上 1200×630 的徽章，请先点击「复制图片」—— X 允许你直接粘贴到推文编辑器中。「下载 PNG」会将文件保存下来，可在任意位置使用。",
      clipboard_unsupported:
        "此浏览器不支持复制剪贴板图片 —— 请改用「下载」。",
      tweet_text: "Just unlocked {tier_part}\"{name}\" in Hermes Agent ☤",
    },
  },

  kanban: {
    loading: "正在加载看板…",
    loadFailed: "加载看板失败：",
    loadFailedHint:
      "后端会在首次读取时自动创建 kanban.db。如果问题持续，请检查仪表盘日志。",
    board: "看板",
    newBoard: "+ 新建看板",
    newBoardTitle: "新建看板",
    newBoardDescription:
      "看板可以将不相关的工作流分开——每个项目、代码库或域一个看板。一个看板上的工作者不会看到另一个看板的任务。",
    slug: "标识",
    slugHint: "— 小写字母、连字符，例如 atm10-server",
    displayName: "显示名称",
    displayNameHint: "（可选）",
    description: "描述",
    descriptionHint: "（可选）",
    icon: "图标",
    iconHint: "（单个字符或表情）",
    switchAfterCreate: "创建后切换到此看板",
    cancel: "取消",
    creating: "创建中…",
    createBoard: "创建看板",
    search: "搜索",
    filterCards: "筛选卡片…",
    tenant: "租户",
    allTenants: "全部租户",
    assignee: "负责人",
    allProfiles: "全部配置",
    showArchived: "显示已归档",
    lanesByProfile: "按配置分组",
    nudgeDispatcher: "触发调度器",
    refresh: "刷新",
    selected: "已选中",
    complete: "完成",
    archive: "归档",
    apply: "应用",
    clear: "清除",
    createTask: "在此列创建任务",
    noTasks: "— 无任务 —",
    unassigned: "未分配",
    untitled: "（无标题）",
    loadingDetail: "加载中…",
    addComment: "添加评论…（按回车提交）",
    comment: "评论",
    status: "状态",
    workspace: "工作区",
    skills: "技能",
    createdBy: "创建者",
    result: "结果",
    comments: "评论",
    events: "事件",
    runHistory: "运行历史",
    workerLog: "工作日志",
    loadingLog: "正在加载日志…",
    noWorkerLog:
      "— 暂无工作日志（任务尚未启动或日志已被轮转）—",
    noDescription: "— 无描述 —",
    noComments: "— 无评论 —",
    edit: "编辑",
    save: "保存",
    dependencies: "依赖",
    parents: "父任务：",
    children: "子任务：",
    none: "无",
    addParent: "— 添加父任务 —",
    addChild: "— 添加子任务 —",
    removeDependency: "移除依赖",
    block: "阻塞",
    unblock: "解除阻塞",
    notifyHomeChannels: "通知主页频道",
    diagnostics: "诊断",
    hide: "隐藏",
    show: "显示",
    attention: "注意",
    tasksNeedAttention: "个任务需要关注",
    taskNeedsAttention: "1 个任务需要关注",
    diagnostic: "诊断",
    open: "打开",
    close: "关闭 (Esc)",
    reassignTo: "重新分配给：",
    copied: "已复制",
    copyCommand: "复制命令到剪贴板",
    reclaim: "收回",
    reassign: "重新分配",
    renderingError: "看板标签页发生渲染错误",
    reloadView: "重新加载视图",
    wsAuthFailed:
      "WebSocket 认证失败 — 请刷新页面以更新会话令牌。",
    markDone: "将 {n} 个任务标记为完成？",
    markArchived: "归档 {n} 个任务？",
    warning: "警告",
    phantomIds: "幽灵 ID：",
    active: "运行中",
    ended: "已结束",
    noProfile: "（无配置）",
    showAllAttempts: "显示所有尝试",
    sendingUpdates: "正在发送更新到",
    sendNotifications: "发送完成 / 阻塞 / 放弃通知到",
    archiveBoardConfirm:
      "归档看板 '{name}'？它将被移动到 boards/_archived/ 以便稍后恢复。此看板上的任务将不再出现在 UI 中的任何地方。",
    archiveBoardTitle: "归档此看板",
    boardSwitcherHint: "看板可以将不相关的工作流分开",
    taskCreatedWarning: "任务已创建，但：",
    moveFailed: "移动失败：",
    bulkFailed: "批量操作：",
    completionBlockedHallucination: "⚠ 完成被阻塞 — 幽灵卡片 ID",
    suspectedHallucinatedReferences: "⚠ 文本引用了幽灵卡片 ID",
    pickProfileFirst: "请先选择一个配置。",
    unblockedMessage: "已解除阻塞 {id}。任务已准备好进入下一轮调度。",
    unblockFailed: "解除阻塞失败：",
    reclaimedMessage: "已收回 {id}。任务已回到就绪状态。",
    reclaimFailed: "收回失败：",
    reassignedMessage: "已将 {id} 重新分配给 {profile}。",
    reassignFailed: "重新分配失败：",
    selectForBulk: "选择以进行批量操作",
    clickToEdit: "点击编辑",
    clickToEditAssignee: "点击编辑负责人",
    emptyAssignee: "（留空 = 取消分配）",
    columnLabels: {
      triage: "待分类",
      todo: "待办",
      scheduled: "已调度",
      ready: "就绪",
      running: "进行中",
      blocked: "阻塞",
      done: "已完成",
      archived: "已归档",
    },
    columnHelp: {
      triage: "原始想法 — 规范制定者将完善规格",
      todo: "等待依赖项或未分配",
      scheduled: "等待已知的时间延迟或已调度的跟进",
      ready: "依赖项已满足；分配一个配置文件以便调度",
      running: "已被工作者认领 — 执行中",
      blocked: "工作者请求人工输入",
      done: "已完成",
      archived: "已归档",
    },
    confirmDone:
      "将此任务标记为完成？工作者将被释放，依赖的子任务将变为就绪。",
    confirmArchive:
      "归档此任务？它将从默认看板视图中消失。",
    confirmBlocked:
      "将此任务标记为阻塞？工作者将被释放。",
    completionSummary:
      "{label} 的完成摘要。这将作为任务结果存储。",
    completionSummaryRequired:
      "在将任务标记为完成之前，必须提供完成摘要。",
    triagePlaceholder: "粗略想法 — AI 将完善规格…",
    taskTitlePlaceholder: "新任务标题…",
    specifier: "规范制定者",
    assigneePlaceholder: "负责人",
    priority: "优先级",
    skillsPlaceholder:
      "技能（可选，逗号分隔）：翻译、github-code-review",
    noParent: "— 无父任务 —",
    workspacePathDir: "工作区路径（必填，例如 ~/projects/my-app）",
    workspacePathOptional:
      "工作区路径（可选，留空则根据负责人推导）",
    logTruncated: "（显示最后 100 KB — 完整日志位于 ",
    logAt: "）",
  },
};
