This commit is contained in:
ZacharyZhang-NY committed 2026-04-21 12:44:33 -04:00
1 parent 740d0812ee
commit 97033dfabd
68 files changed
+2608 -328

No files matched your search

+7 -24
View File
@@ -215,10 +215,8 @@ export const en: Record<string, string> = {
"skills.filterPlaceholder": "Filter skills...",
"skills.filterAria": "Filter skills",
"skills.emptyTitle": "No skills imported",
"skills.emptyDetail": "Import skills from GitHub, a local path, or skills.sh to get started.",
"skills.importButton": "Import Skill",
"skills.selectToViewTitle": "Select a skill to view details",
"skills.selectToViewDetail": "Choose a skill from the list to see its content, file tree, and configuration.",
"agent.pendingApproval": "Pending Approval",
"agent.pendingHireNote": "Pending hires must be approved or rejected from Hiring or Approvals.",
@@ -403,7 +401,6 @@ export const en: Record<string, string> = {
// ── Execution / Task Inspector ──
"exec.taskQueueEmpty": "All caught up",
"exec.taskQueueEmptyDetail": "New tasks show up here.",
"exec.deleteTask": "Delete task",
"exec.deleteTaskConfirm": "Permanently delete \"{0}\"? This cannot be undone.",
"exec.budgetUsed": "has used {0}% of their monthly budget",
@@ -458,7 +455,6 @@ export const en: Record<string, string> = {
"exec.createTask": "Create task",
"exec.taskTitle": "Task title",
"exec.noReviewsInProgress": "No reviews pending",
"exec.noReviewsDetail": "Review items show up here.",
"exec.awaitingReview": "awaiting review",
"exec.reviewedBy": "reviewed by",
"exec.reviewGroupBoard": "Board review",
@@ -467,7 +463,6 @@ export const en: Record<string, string> = {
"exec.reviewAwaitsBoard": "awaiting board approval",
"exec.reviewAwaitsUser": "awaiting your review",
"exec.noApprovals": "No pending approvals",
"exec.noApprovalsDetail": "Approvals show up here when agents need you.",
"exec.deleteApproval": "Delete approval",
"exec.deleteApprovalConfirm": "Permanently delete this approval? This cannot be undone.",
"exec.requestedBy": "Requested by:",
@@ -490,7 +485,6 @@ export const en: Record<string, string> = {
"exec.reject": "Reject",
"exec.lastNote": "Last note:",
"exec.noCostData": "No costs recorded yet",
"exec.noCostDataDetail": "Costs show up here after runs start.",
"exec.allConnectors": "All connectors",
"exec.runCost": "Run cost",
"exec.unknownAgent": "Unknown agent",
@@ -499,20 +493,17 @@ export const en: Record<string, string> = {
"exec.knownSpend": "Known spend",
"exec.unattributedEntries": "Unattributed entries",
"exec.noActivityYet": "No activity recorded yet",
"exec.noActivityDetail": "Task and system updates show here.",
"exec.searchActivity": "Search activity...",
"exec.allTypes": "All types",
"exec.noMatchingActivity": "No activity matches this filter",
"exec.loadMore": "Load more ({0} remaining)",
"exec.noWorkspacesYet": "No workspaces created yet",
"exec.noWorkspacesDetail": "Workspaces are created automatically.",
"exec.deleteWorkspace": "Delete workspace",
"exec.deleteWorkspaceConfirm": "Delete workspace \"{0}\"? Files on disk stay.",
"exec.inspect": "Inspect",
"exec.reveal": "Reveal",
"exec.noRemoteUrl": "No remote URL",
"exec.selectWorkspace": "Select a workspace",
"exec.selectWorkspaceDetail": "Pick a workspace to see its tasks and activity.",
"exec.selectWorkspace": "Select a workspace to inspect",
"exec.agents": "Agents",
"exec.tasks": "Tasks",
"exec.runs": "Runs",
@@ -648,10 +639,8 @@ export const en: Record<string, string> = {
"dash.poor": "Poor",
"dash.critical": "Critical",
"dash.noAgentsYet": "No agents hired yet",
"dash.noAgentsDetail": "Your CEO is hiring. Check back soon.",
"dash.createCeoAgent": "",
"dash.noActivityYet": "Waiting for activity",
"dash.noActivityDetail": "Live updates show here.",
"dash.liveRuns": "Live Runs",
"dash.running": "running",
"dash.allQuiet": "All quiet",
@@ -703,14 +692,10 @@ export const en: Record<string, string> = {
// ── Organization ──
"org.noAgentsYet": "No team members yet",
"org.noAgentsDetail": "Hired members show up here.",
"org.noTitle": "No title",
"org.noGoalsYet": "No goals defined yet",
"org.noGoalsDetail": "Goals set the team's priorities.",
"org.noProjectsYet": "No projects created yet",
"org.noProjectsDetail": "Projects show up here.",
"org.noAgentsToDisplay": "Organization chart is empty",
"org.noAgentsToDisplayDetail": "The org chart appears after hiring starts.",
"org.saveChanges": "Save",
"org.submitHireRequest": "Submit hire request",
"org.createGoal": "Create goal",
@@ -770,7 +755,6 @@ export const en: Record<string, string> = {
// ── Runs ──
"runs.noRunsYet": "No agent runs yet",
"runs.noRunsDetail": "Runs show up here with logs and status.",
"runs.activeLabel": "Active",
"runs.queuedOrRunning": "Queued or running right now",
"runs.needsAttention": "Needs attention",
@@ -780,7 +764,6 @@ export const en: Record<string, string> = {
"runs.runQueue": "Run queue",
"runs.searchRuns": "Search by task, agent, connector, workspace, or error",
"runs.noRunsMatch": "No runs match this filter",
"runs.noRunsMatchDetail": "Try another filter.",
"runs.runDetail": "Run detail",
"runs.cancelRun": "Cancel run",
"runs.noSummary": "No summary yet",
@@ -874,9 +857,7 @@ export const en: Record<string, string> = {
"ops.documentsProse": "Prose documents",
"ops.documentsWorkProducts": "Files & deliverables",
"ops.documentsEmptyTitle": "No documents yet",
"ops.documentsEmptyDetail": "Agents register files here automatically when they write to the workspace, and can publish prose documents (PRDs, specs, post-mortems) via POST /api/companies/{id}/documents.",
"ops.documentsEmptyAction": "Create the first document",
"ops.documentsSelectCompany": "Select a company from the workspace switcher to see its documents.",
"ops.knowledgeBase": "Knowledge Base",
"ops.meetings": "Meetings",
"ops.sprintBoard": "Sprint Board",
@@ -1007,7 +988,6 @@ export const en: Record<string, string> = {
"kanban.done": "Done",
"kanban.blocked": "Blocked",
"kanban.noTasks": "No tasks yet",
"kanban.noTasksDetail": "Tasks created by agents will appear here on the board",
"kanban.unassigned": "Unassigned",
"kanban.running": "Running",
"kanban.priority.critical": "Critical",
@@ -1096,7 +1076,6 @@ export const en: Record<string, string> = {
"auto.rules.filterPaused": "Paused",
"auto.rules.filterError": "Error",
"auto.rules.noRules": "No automation rules",
"auto.rules.noRulesDetail": "Create your first rule to make the company autonomous.",
"auto.rules.createFirstRule": "Create First Rule",
"auto.rules.noRulesFilter": "No rules match the current filter.",
"auto.rules.deleteRule": "Delete rule",
@@ -1108,7 +1087,6 @@ export const en: Record<string, string> = {
"auto.workflows.summaryOther": "{n} other",
"auto.workflows.newWorkflow": "New Workflow",
"auto.workflows.noWorkflows": "No workflow pipelines",
"auto.workflows.noWorkflowsDetail": "Workflows chain actions into multi-step pipelines.",
"auto.workflows.createFirstWorkflow": "Create First Workflow",
"auto.workflows.deleteWorkflow": "Delete workflow",
"auto.workflows.deleteWorkflowConfirm": "Are you sure you want to delete {name}? This action cannot be undone.",
@@ -1349,6 +1327,12 @@ export const en: Record<string, string> = {
"approval.proposedHire": "Proposed Hire",
"approval.orgStrategy": "Organization Strategy",
"approval.documentNotLoaded": "The linked document is not loaded in the current snapshot yet. Reopen the approval after the next refresh.",
"approval.documentLoading": "Loading linked attachment…",
"approval.documentMissing": "This attachment is no longer available. It may have been deleted since the approval was filed.",
"approval.missingWorkProductTitle": "Missing work product",
"approval.missingDocumentTitle": "Missing document",
"approval.malformedPayloadTitle": "This approval is malformed",
"approval.malformedPayloadBody": "The attachment metadata on this approval could not be parsed. Contact the agent that filed it to refile with a valid payload.",
"approval.documentTitleRequired": "Document title is required.",
"approval.documentSavedToast": "Saved document: {title}",
"approval.saving": "Saving...",
@@ -1433,7 +1417,6 @@ export const en: Record<string, string> = {
"comm.searchResultsAria": "Search results",
"comm.unknownAgent": "Unknown Agent",
"comm.searchEmptyTitle": "No messages matched your search",
"comm.searchEmptyDetail": "Try different keywords or search across all channels.",
"comm.resultCount": "{count} result",
"comm.resultCountPlural": "{count} results",
"comm.channelsTotal": "{count} channels",
+7 -24
View File
@@ -215,10 +215,8 @@ export const zh: Record<string, string> = {
"skills.filterPlaceholder": "过滤技能...",
"skills.filterAria": "过滤技能",
"skills.emptyTitle": "尚未导入技能",
"skills.emptyDetail": "从 GitHub、本地路径或 skills.sh 导入技能即可开始。",
"skills.importButton": "导入技能",
"skills.selectToViewTitle": "选择一个技能查看详情",
"skills.selectToViewDetail": "从列表中选择一项,查看其内容、文件树与配置。",
"agent.pendingApproval": "等待审批",
"agent.pendingHireNote": "待审批成员需在招聘或审批页面处理。",
@@ -403,7 +401,6 @@ export const zh: Record<string, string> = {
// ── 执行/任务检查器 ──
"exec.taskQueueEmpty": "暂无待办任务",
"exec.taskQueueEmptyDetail": "有新任务时会显示在这里。",
"exec.deleteTask": "删除任务",
"exec.deleteTaskConfirm": "永久删除「{0}」?此操作无法撤消。",
"exec.budgetUsed": "已使用 {0}% 的月度预算",
@@ -458,7 +455,6 @@ export const zh: Record<string, string> = {
"exec.createTask": "创建任务",
"exec.taskTitle": "任务标题",
"exec.noReviewsInProgress": "暂无待审核任务",
"exec.noReviewsDetail": "待审核任务会出现在这里。",
"exec.awaitingReview": "等待审核",
"exec.reviewedBy": "由...审核",
"exec.reviewGroupBoard": "董事会审核",
@@ -467,7 +463,6 @@ export const zh: Record<string, string> = {
"exec.reviewAwaitsBoard": "等待董事会批准",
"exec.reviewAwaitsUser": "等待你的审核",
"exec.noApprovals": "暂无待审批项",
"exec.noApprovalsDetail": "需要你批准的内容会出现在这里。",
"exec.deleteApproval": "删除审批",
"exec.deleteApprovalConfirm": "永久删除此审批?此操作无法撤消。",
"exec.requestedBy": "请求者:",
@@ -490,7 +485,6 @@ export const zh: Record<string, string> = {
"exec.reject": "拒绝",
"exec.lastNote": "最近备注:",
"exec.noCostData": "暂无费用记录",
"exec.noCostDataDetail": "开始运行后,这里会显示费用。",
"exec.allConnectors": "全部连接器",
"exec.runCost": "运行费用",
"exec.unknownAgent": "未知智能体",
@@ -499,20 +493,17 @@ export const zh: Record<string, string> = {
"exec.knownSpend": "已知支出",
"exec.unattributedEntries": "未归因条目",
"exec.noActivityYet": "暂无活动记录",
"exec.noActivityDetail": "任务和系统动态会显示在这里。",
"exec.searchActivity": "搜索活动...",
"exec.allTypes": "全部类型",
"exec.noMatchingActivity": "没有匹配此筛选条件的活动",
"exec.loadMore": "加载更多(还剩 {0} 条)",
"exec.noWorkspacesYet": "暂无工作区",
"exec.noWorkspacesDetail": "公司启动后会自动创建。",
"exec.deleteWorkspace": "删除工作区",
"exec.deleteWorkspaceConfirm": "删除工作区「{0}」?只会移出系统,不会删磁盘文件。",
"exec.inspect": "检查",
"exec.reveal": "在文件管理器中显示",
"exec.noRemoteUrl": "无远程地址",
"exec.selectWorkspace": "选择一个工作区",
"exec.selectWorkspaceDetail": "选一个工作区查看任务和动态。",
"exec.selectWorkspace": "选一个工作区查看",
"exec.agents": "智能体",
"exec.tasks": "任务",
"exec.runs": "运行",
@@ -648,10 +639,8 @@ export const zh: Record<string, string> = {
"dash.poor": "较差",
"dash.critical": "危急",
"dash.noAgentsYet": "尚未招聘智能体",
"dash.noAgentsDetail": "CEO 正在招人,稍后再看。",
"dash.createCeoAgent": "",
"dash.noActivityYet": "等待活动",
"dash.noActivityDetail": "动态会实时显示在这里。",
"dash.liveRuns": "实时运行",
"dash.running": "运行中",
"dash.allQuiet": "一切平静",
@@ -703,14 +692,10 @@ export const zh: Record<string, string> = {
// ── 组织 ──
"org.noAgentsYet": "还没有团队成员",
"org.noAgentsDetail": "招到人后会显示在这里。",
"org.noTitle": "无职位",
"org.noGoalsYet": "暂未设定目标",
"org.noGoalsDetail": "目标会决定团队优先级。",
"org.noProjectsYet": "暂无项目",
"org.noProjectsDetail": "项目会在这里出现。",
"org.noAgentsToDisplay": "组织架构图为空",
"org.noAgentsToDisplayDetail": "招到人后,这里会显示汇报关系。",
"org.saveChanges": "保存",
"org.submitHireRequest": "提交招聘请求",
"org.createGoal": "创建目标",
@@ -770,7 +755,6 @@ export const zh: Record<string, string> = {
// ── 运行 ──
"runs.noRunsYet": "暂无智能体运行记录",
"runs.noRunsDetail": "开始跑任务后,这里会显示日志和状态。",
"runs.activeLabel": "活跃",
"runs.queuedOrRunning": "正在排队或运行中",
"runs.needsAttention": "需要关注",
@@ -780,7 +764,6 @@ export const zh: Record<string, string> = {
"runs.runQueue": "运行队列",
"runs.searchRuns": "按任务、智能体、连接器、工作区或错误搜索",
"runs.noRunsMatch": "没有匹配此筛选条件的运行",
"runs.noRunsMatchDetail": "换个筛选试试。",
"runs.runDetail": "运行详情",
"runs.cancelRun": "取消运行",
"runs.noSummary": "暂无摘要",
@@ -874,9 +857,7 @@ export const zh: Record<string, string> = {
"ops.documentsProse": "文稿",
"ops.documentsWorkProducts": "文件与交付物",
"ops.documentsEmptyTitle": "还没有文档",
"ops.documentsEmptyDetail": "Agent 在 workspace 里写文件时会被自动登记为交付物;结构化文稿(PRD、技术规格、复盘)需要调用 POST /api/companies/{id}/documents 发布。",
"ops.documentsEmptyAction": "创建第一份文档",
"ops.documentsSelectCompany": "请先在工作区切换器中选择一家公司,才能查看它的文档。",
"ops.knowledgeBase": "知识库",
"ops.meetings": "会议",
"ops.sprintBoard": "迭代看板",
@@ -1007,7 +988,6 @@ export const zh: Record<string, string> = {
"kanban.done": "已完成",
"kanban.blocked": "阻塞",
"kanban.noTasks": "暂无任务",
"kanban.noTasksDetail": "智能体创建的任务会显示在看板上",
"kanban.unassigned": "未分配",
"kanban.running": "运行中",
"kanban.priority.critical": "紧急",
@@ -1096,7 +1076,6 @@ export const zh: Record<string, string> = {
"auto.rules.filterPaused": "已暂停",
"auto.rules.filterError": "出错",
"auto.rules.noRules": "暂无自动化规则",
"auto.rules.noRulesDetail": "创建第一条规则,让公司自主运转。",
"auto.rules.createFirstRule": "创建第一条规则",
"auto.rules.noRulesFilter": "没有符合当前筛选条件的规则。",
"auto.rules.deleteRule": "删除规则",
@@ -1108,7 +1087,6 @@ export const zh: Record<string, string> = {
"auto.workflows.summaryOther": "{n} 条其它",
"auto.workflows.newWorkflow": "新建工作流",
"auto.workflows.noWorkflows": "暂无工作流",
"auto.workflows.noWorkflowsDetail": "工作流把多个动作串成多步流水线。",
"auto.workflows.createFirstWorkflow": "创建第一个工作流",
"auto.workflows.deleteWorkflow": "删除工作流",
"auto.workflows.deleteWorkflowConfirm": "确定删除 {name} 吗?该操作不可恢复。",
@@ -1349,6 +1327,12 @@ export const zh: Record<string, string> = {
"approval.proposedHire": "拟招聘",
"approval.orgStrategy": "组织战略",
"approval.documentNotLoaded": "关联文档尚未加载到当前快照,下次刷新后重新打开此审批。",
"approval.documentLoading": "正在加载关联附件…",
"approval.documentMissing": "附件已不可用,可能在审批发起后被删除。",
"approval.missingWorkProductTitle": "交付物已缺失",
"approval.missingDocumentTitle": "文档已缺失",
"approval.malformedPayloadTitle": "审批数据异常",
"approval.malformedPayloadBody": "附件元数据无法解析,请联系发起该审批的代理重新提交有效负载。",
"approval.documentTitleRequired": "文档标题不能为空。",
"approval.documentSavedToast": "已保存文档:{title}",
"approval.saving": "保存中...",
@@ -1433,7 +1417,6 @@ export const zh: Record<string, string> = {
"comm.searchResultsAria": "搜索结果",
"comm.unknownAgent": "未知智能体",
"comm.searchEmptyTitle": "没有匹配的消息",
"comm.searchEmptyDetail": "换个关键词,或者在全部频道中搜索。",
"comm.resultCount": "{count} 条结果",
"comm.resultCountPlural": "{count} 条结果",
"comm.channelsTotal": "{count} 个频道",