Initial commit: Elydora Open Source — self-hosted audit platform for AI agents
Full self-hosted port of the Elydora tamper-evident audit protocol: - Hono API server with PostgreSQL, Redis, MinIO adapters - Ed25519 signed operations, chain hashing, Merkle epoch rollups - PBKDF2 password hashing, HMAC-SHA256 JWT, 5-role RBAC - Next.js management console - Node.js, Python, and Go SDKs - Docker Compose for local deployment - Helm chart for Kubernetes - Comprehensive security hardening and audit fixes applied Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
15547a8c35
commit
e390e68594
207 files changed
+32790
-63
No files matched your search
@@ -0,0 +1,390 @@
|
||||
{
|
||||
"common": {
|
||||
"dashboard": "仪表盘",
|
||||
"agents": "代理",
|
||||
"operations": "操作",
|
||||
"epochs": "纪元",
|
||||
"auditTrail": "审计追踪",
|
||||
"exports": "导出",
|
||||
"jwks": "JWKS",
|
||||
"settings": "设置",
|
||||
"cancel": "取消",
|
||||
"delete": "删除",
|
||||
"download": "下载",
|
||||
"continue": "继续",
|
||||
"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": "注册代理失败。",
|
||||
"agentRegistered": "代理注册成功",
|
||||
"privateKeySaveNow": "私钥 — 请立即保存",
|
||||
"privateKeyWarning": "此私钥不会再次显示。请将其存储为环境变量或保存在密钥管理器中。",
|
||||
"apiToken": "API 令牌",
|
||||
"apiTokenDesc": "将其用作 ELYDORA_TOKEN 环境变量。这是您的 API 认证令牌。",
|
||||
"tokenExpiration": "令牌有效期",
|
||||
"customDays": "天数",
|
||||
"days": "天",
|
||||
"enterValidDays": "请输入有效的天数(最少 1 天)。",
|
||||
"issuing": "签发中...",
|
||||
"issueApiToken": "签发 API 令牌",
|
||||
"failedToIssueToken": "签发令牌失败。",
|
||||
"credAgentId": "代理 ID",
|
||||
"credKeyId": "密钥 ID",
|
||||
"credOrgId": "组织 ID",
|
||||
"credAlgorithm": "算法",
|
||||
"chooseIntegration": "选择集成方式",
|
||||
"chooseIntegrationDesc": "此代理将如何连接到 Elydora?",
|
||||
"supported": "支持的(一键安装)",
|
||||
"sdkIntegration": "SDK 集成",
|
||||
"install": "安装",
|
||||
"backToList": "返回",
|
||||
"sdkTutorial": "SDK 教程",
|
||||
"aiReadyPrompt": "AI 就绪提示",
|
||||
"aiReadyPromptDesc": "复制此提示并粘贴到您的 AI 代理中以自动设置 Elydora。",
|
||||
"copyPrompt": "复制提示",
|
||||
"done": "完成",
|
||||
"step": "第 {{current}} 步,共 {{total}} 步"
|
||||
},
|
||||
"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": "任何自定义集成"
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user