mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-05-06 02:41:48 +00:00
- New config key: dashboard.hidden_plugins (list of plugin names)
- GET /api/dashboard/plugins now filters out hidden plugins from sidebar
- POST /api/dashboard/plugins/{name}/visibility toggles visibility
- Hub response includes user_hidden boolean per plugin row
- Eye/EyeOff toggle on plugin cards with dashboard manifests
- i18n: 'Show in sidebar' / 'Hide from sidebar' (en/zh)
424 lines
14 KiB
TypeScript
424 lines
14 KiB
TypeScript
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: "切换主题",
|
||
},
|
||
};
|