Files
Elydora-Open-Source/packages/console/src/i18n/zh.json
T
雷电芽衣 edf9d73c3e console: sync the registration wizard and issue real API tokens
Mirror the Console registration feature: native hook catalog with
activation plans, one-command install that embeds both credentials in
exclusively created owner-only files (mktemp on POSIX, icacls on
Windows), sh/PowerShell tabs, never-expiring default token, focus-visible
styles, merged i18n keys, and the matching e2e specs.

The server previously answered /v1/auth/token with the 7-day Better Auth
session token and ignored ttl_seconds. It now issues opaque 32-byte API
tokens stored as SHA-256 hashes (migration 003), honours ttl_seconds with
null meaning no expiry, and resolves bearer values as API tokens before
session validation. Issuance requires a session credential.

Claude-Session: https://claude.ai/code/session_01QoUjdc7HGKTsgj5GhG8HvF
2026-09-02 09:56:40 -04:00

425 lines
15 KiB
JSON

{
"common": {
"dashboard": "仪表盘",
"agents": "代理",
"operations": "操作",
"epochs": "纪元",
"auditTrail": "审计追踪",
"exports": "导出",
"jwks": "JWKS",
"settings": "设置",
"cancel": "取消",
"delete": "删除",
"download": "下载",
"continue": "继续",
"back": "返回",
"signOut": "退出登录",
"copy": "复制",
"copied": "已复制",
"clickToCopy": "点击复制",
"viewAll": "查看全部",
"home": "首页",
"docs": "文档",
"console": "控制台",
"loading": "加载中...",
"unknownError": "未知错误。",
"allData": "全部数据",
"copyToClipboard": "复制到剪贴板",
"copyJwks": "复制 JWKS",
"links": "链接"
},
"sidebar": {
"overview": "概览",
"management": "管理",
"compliance": "合规",
"system": "系统"
},
"dashboard": {
"title": "仪表盘",
"subtitle": "Elydora 责任追溯控制台概览",
"totalAgents": "代理总数",
"registeredAgents": "已注册代理",
"totalOperations": "操作总数",
"allRecordedOps": "所有已记录操作",
"activeEpochs": "活跃纪元",
"merkleRollups": "Merkle 树汇总纪元",
"pendingExports": "待处理导出",
"queuedOrRunning": "排队中或运行中",
"quickActions": "快捷操作",
"registerAgent": "注册代理",
"viewOperations": "查看操作",
"createExport": "创建导出",
"recentOperations": "最近操作",
"noOperations": "尚无操作记录。",
"agentSummary": "代理概要",
"noAgentsRegistered": "尚未注册代理。注册一个代理以开始记录操作。",
"latestActivity": "最近活动",
"failedToLoad": "加载仪表盘数据失败。请确保 API 可访问。",
"colOperationId": "操作 ID",
"colAgent": "代理",
"colType": "类型",
"colIssued": "签发时间",
"colSeq": "序号"
},
"agents": {
"title": "代理",
"subtitle": "管理已注册的 AI 代理",
"registerAgent": "注册代理",
"searchPlaceholder": "按 ID 搜索代理...",
"colAgent": "代理",
"colStatus": "状态",
"colOperations": "操作数",
"colLatestActivity": "最近活动",
"emptyMessage": "未找到代理。注册一个代理以开始使用。",
"failedToLoad": "加载代理列表失败。",
"deleteAgent": "删除代理",
"deleteConfirmPre": "确定要删除代理 ",
"deleteConfirmPost": " 吗?这将永久移除该代理及其所有密钥。此操作无法撤销。",
"deleting": "删除中...",
"failedToDelete": "删除代理失败。"
},
"agentDetail": {
"title": "代理详情",
"agentId": "代理 ID",
"status": "状态",
"organization": "组织",
"displayName": "显示名称",
"responsibleEntity": "责任实体",
"created": "创建时间",
"keys": "密钥",
"noKeys": "该代理没有已注册的密钥。",
"colKeyId": "密钥 ID",
"colAlgorithm": "算法",
"colStatus": "状态",
"colCreated": "创建时间",
"revoke": "吊销",
"operations": "操作",
"freezeAgent": "冻结代理",
"unfreezeAgent": "解冻代理",
"reason": "原因",
"freezePlaceholder": "请提供冻结此代理的原因...",
"unfreezePlaceholder": "请提供解冻此代理的原因...",
"freezing": "冻结中...",
"confirmFreeze": "确认冻结",
"unfreezing": "解冻中...",
"confirmUnfreeze": "确认解冻",
"failedToFreeze": "冻结代理失败。",
"failedToUnfreeze": "解冻代理失败。",
"reasonRequired": "原因为必填项。",
"revokeKey": "吊销密钥",
"revokePlaceholder": "请提供吊销此密钥的原因...",
"revoking": "吊销中...",
"confirmRevoke": "确认吊销",
"failedToRevoke": "吊销密钥失败。",
"freezeDescPre": "冻结代理 ",
"freezeDescPost": " 将阻止其提交新操作。此操作会记录在审计追踪中。",
"unfreezeDescPre": "解冻代理 ",
"unfreezeDescPost": " 将允许其恢复提交操作。此操作会记录在审计追踪中。",
"revokeKeyDescPre": "吊销密钥 ",
"revokeKeyDescPost": " 将阻止其用于签署操作。此操作无法撤销。",
"failedToLoad": "加载代理信息失败。",
"mayNotExist": "该代理可能不存在。",
"noOperations": "该代理尚无操作记录。"
},
"operationDetail": {
"title": "操作详情",
"failedToLoad": "加载操作信息失败。",
"mayNotExist": "该操作可能不存在。"
},
"operationCard": {
"operationRecord": "操作记录",
"formatted": "格式化",
"rawJson": "原始 JSON",
"operationId": "操作 ID",
"agentId": "代理 ID",
"orgId": "组织 ID",
"type": "类型",
"issuedAt": "签发时间",
"createdAt": "创建时间",
"ttlMs": "TTL (ms)",
"nonce": "Nonce",
"seqNo": "序号",
"signingKey": "签名密钥",
"payloadHash": "载荷哈希",
"prevChainHash": "上一链哈希",
"chainHash": "链哈希",
"r2PayloadKey": "R2 载荷键",
"payload": "载荷",
"receipt": "回执 (EAR)",
"receiptId": "回执 ID",
"r2ReceiptKey": "R2 回执键"
},
"operations": {
"title": "操作",
"subtitle": "浏览和检查已记录的操作",
"searchPlaceholder": "按 ID、代理或类型搜索...",
"colOperationId": "操作 ID",
"colAgent": "代理",
"colType": "类型",
"colIssuedAt": "签发时间",
"colSeq": "序号",
"agentIdFilter": "代理 ID",
"filterByAgent": "按代理筛选",
"typeFilter": "类型",
"filterByType": "按类型筛选",
"emptyMessage": "没有符合筛选条件的操作。",
"failedToLoad": "加载操作列表失败。"
},
"epochs": {
"title": "纪元",
"subtitle": "定期 Merkle 树汇总锚定操作",
"colEpochId": "纪元 ID",
"colTimeRange": "时间范围",
"colLeaves": "叶子数",
"colRootHash": "根哈希",
"colCreated": "创建时间",
"emptyMessage": "尚未创建纪元。纪元会随着操作的记录定期生成。",
"failedToLoad": "加载纪元列表失败。"
},
"epochDetail": {
"title": "纪元详情",
"viewOperations": "查看操作",
"epochMetadata": "纪元元数据",
"epochId": "纪元 ID",
"organization": "组织",
"startTime": "开始时间",
"endTime": "结束时间",
"duration": "持续时间",
"durationMinutes": "{{count}} 分钟",
"createdAt": "创建时间",
"merkleTree": "Merkle 树",
"rootHash": "根哈希",
"leafCount": "叶子数量",
"operationsUnit": "个操作",
"tsaAnchor": "TSA 锚点",
"tsaToken": "TSA 令牌",
"tsaUrl": "TSA URL",
"anchoredAt": "锚定时间",
"noTsaAnchor": "此纪元暂无 TSA 锚点信息。",
"storage": "存储",
"r2EpochKey": "R2 纪元键",
"failedToLoad": "加载纪元信息失败。",
"mayNotExist": "该纪元可能不存在。"
},
"audit": {
"title": "审计追踪",
"subtitle": "查询和检查完整的操作审计日志",
"exportData": "导出数据",
"queryBuilder": "查询构建器",
"clearFilters": "清除筛选",
"agentId": "代理 ID",
"filterByAgent": "按代理筛选",
"operationType": "操作类型",
"filterByType": "按类型筛选",
"startTime": "开始时间",
"endTime": "结束时间",
"showing": "显示 {{shown}} / {{total}} 条结果",
"moreResults": "还有更多结果",
"colOperationId": "操作 ID",
"colAgent": "代理",
"colType": "类型",
"colIssuedAt": "签发时间",
"colSeq": "序号",
"colChainHash": "链哈希",
"emptyMessage": "没有匹配的审计记录。请调整筛选条件或清除筛选以查看所有记录。",
"failedToLoad": "加载审计数据失败。"
},
"exports": {
"title": "导出",
"subtitle": "创建和下载合规数据导出",
"createExport": "创建导出",
"colExportId": "导出 ID",
"colStatus": "状态",
"colFilters": "筛选条件",
"colCreated": "创建时间",
"colCompleted": "完成时间",
"emptyMessage": "尚未创建导出。创建导出以下载合规数据。",
"failedToLoad": "加载导出列表失败。",
"startTime": "开始时间",
"endTime": "结束时间",
"agentIdOptional": "代理 ID(可选)",
"filterByAgent": "按特定代理筛选",
"operationTypeOptional": "操作类型(可选)",
"filterByOperationType": "按操作类型筛选",
"format": "格式",
"creating": "创建中...",
"startEndRequired": "开始时间和结束时间为必填项。",
"failedToCreate": "创建导出失败。"
},
"jwks": {
"title": "JWKS",
"subtitle": "用于令牌验证的 JSON Web 密钥集",
"publicKeys": "公钥",
"colKeyId": "密钥 ID",
"colKeyType": "密钥类型",
"colAlgorithm": "算法",
"colCurve": "曲线",
"colUse": "用途",
"colPublicKey": "公钥",
"emptyMessage": "没有可用的 JWKS 密钥。服务器可能尚未发布公钥。",
"failedToLoad": "加载 JWKS 失败。",
"endpoint": "JWKS 端点:"
},
"settings": {
"title": "设置",
"subtitle": "账户和组织详情",
"user": "用户",
"displayName": "显示名称",
"email": "邮箱",
"subject": "主体",
"role": "角色",
"organization": "组织",
"organizationId": "组织 ID"
},
"login": {
"signIn": "登录",
"email": "邮箱",
"emailPlaceholder": "you@company.com",
"password": "密码",
"signingIn": "登录中...",
"submitSignIn": "登录",
"noAccount": "还没有账户?",
"createOne": "创建一个",
"loginFailed": "登录失败"
},
"register": {
"createAccount": "创建账户",
"orgName": "组织名称",
"orgPlaceholder": "示例公司",
"displayName": "显示名称",
"displayNamePlaceholder": "张三",
"email": "邮箱",
"emailPlaceholder": "you@company.com",
"password": "密码",
"passwordPlaceholder": "至少 8 个字符",
"creatingAccount": "创建账户中...",
"submitCreateAccount": "创建账户",
"hasAccount": "已有账户?",
"signIn": "登录",
"registrationFailed": "注册失败"
},
"agentRegistration": {
"displayName": "显示名称",
"displayNamePlaceholder": "我的 AI 代理",
"displayNameRequired": "显示名称为必填项。",
"responsibleEntity": "责任实体(可选)",
"responsibleEntityPlaceholder": "负责人或团队",
"submitting": "注册中...",
"submit": "注册代理",
"failedToRegister": "注册代理失败。",
"privateKey": "私钥",
"privateKeySaveNow": "私钥 — 请立即保存",
"privateKeyWarning": "此私钥不会再次显示。请将其存储为环境变量或保存在密钥管理器中。",
"apiToken": "API 令牌",
"tokenExpiration": "令牌有效期",
"days": "天",
"enterValidDays": "请输入 1 至 365 的整数天数。",
"issuing": "签发中...",
"issueApiToken": "签发 API 令牌",
"failedToIssueToken": "签发令牌失败。",
"credAgentId": "代理 ID",
"credKeyId": "密钥 ID",
"credOrgId": "组织 ID",
"install": "安装",
"done": "完成",
"progress": "代理注册进度",
"steps": {
"integration": "集成",
"details": "详情",
"credentials": "凭据",
"connect": "连接"
},
"integrationGroups": {
"hooks": "原生 Hooks",
"sdk": "自定义 SDK"
},
"hookBadge": "HOOKS",
"integration": "集成",
"copySetup": "复制安装命令",
"copyUsage": "复制操作示例",
"copyVerify": "复制验证命令",
"copyPostInstall": "复制激活命令:{{command}}",
"copyPrivateKey": "复制私钥",
"copyApiToken": "复制 API 令牌",
"copyFailed": "复制失败。",
"invalidExpiration": "请选择有效期限。",
"tokenIssued": "仅显示一次,请安全保存。",
"configure": "配置",
"record": "记录操作",
"verify": "验证",
"postInstall": "安装后步骤",
"postInstallSteps": {
"inspectCursorHooks": "打开 Customize → Hooks,在 Hooks 输出通道中确认 Elydora。",
"inspectEnvironment": "确认已加载环境包含 Elydora hooks。",
"inspectGrokConfig": "确认 Elydora PreToolUse、PostToolUse 与 PostToolUseFailure hooks。",
"inspectKiroIdeHooks": "打开 Kiro 面板中的 Agent Hooks,确认 Elydora Audit 已启用。",
"launchKiroV2": "在 Kiro CLI v2 中启动 Elydora audit agent。",
"launchKiroV3": "启动 Kiro CLI v3 并加载全局 Elydora hooks。",
"listHooks": "列出已加载的 Elydora hooks。",
"openHooks": "打开 hook 管理器并检查 Elydora hooks。",
"reviewAndTrustHooks": "检查并信任两个 Elydora command hooks。",
"restartSession": "重启当前 {{integration}} 会话。",
"startSession": "启动新的 {{integration}} 会话。",
"startTask": "启动新的 {{integration}} 任务。"
},
"sdkLanguage": "SDK 语言",
"shell": "终端",
"secretDelivery": {
"embedded": "命令会把两项凭据写入仅所有者可读的文件,安装 hook 后立即删除。",
"environment": "请在运行环境中设置 ELYDORA_PRIVATE_KEY 与 ELYDORA_API_TOKEN。"
}
},
"chain": {
"title": "链可视化",
"previous": "上一个",
"current": "当前 ({{id}})",
"next": "下一个",
"pending": "待处理...",
"chainBlock": "链块",
"currentOperation": "当前操作"
},
"verification": {
"title": "验证",
"verify": "验证",
"reVerify": "重新验证",
"verifying": "验证中...",
"verifiedSuccess": "操作验证成功",
"verificationFailed": "验证失败",
"signature": "签名",
"signatureDesc": "Ed25519 签名对给定公钥有效",
"chainCheck": "链",
"chainCheckDesc": "上一链哈希与预期值匹配",
"receiptCheck": "回执",
"receiptCheckDesc": "服务器回执 (EAR) 有效且与操作匹配",
"merkle": "Merkle",
"merkleDesc": "操作包含在纪元 Merkle 树中",
"pending": "待验证",
"passed": "通过",
"failed": "失败",
"errors": "错误"
},
"tokenExpiration": {
"24hours": "24 小时",
"7days": "7 天",
"1month": "1 个月",
"1year": "1 年",
"custom": "自定义",
"neverExpire": "永不过期"
},
"integrations": {
"claudecode": "Anthropic CLI 代理",
"cursor": "AI 驱动的代码编辑器",
"gemini": "Google AI CLI 代理",
"kirocli": "AWS AI CLI 代理",
"kiroide": "AWS 规格驱动的 AI IDE",
"opencode": "开源 TUI 代理",
"copilot": "GitHub Copilot CLI 代理",
"letta": "Letta AI CLI 代理",
"codex": "OpenAI CLI 代理",
"kimi": "Moonshot AI 助手",
"enterprise": "您的内部代理",
"gui": "桌面或 Web 代理",
"other": "任何自定义集成"
}
}