@nextclaw/ui 0.13.11 → 0.13.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +34 -0
- package/dist/assets/{api-DmxQnm30.js → api-D0hARyyl.js} +1 -1
- package/dist/assets/app-presenter-provider-C7EsUuEJ.js +3 -0
- package/dist/assets/arrow-left-CzSkR5L6.js +1 -0
- package/dist/assets/book-open-DmeQPqkd.js +1 -0
- package/dist/assets/{channels-list-page-bkKDqaO5.js → channels-list-page-B0yiiH01.js} +2 -2
- package/dist/assets/chat-page-ChPjx_X9.js +105 -0
- package/dist/assets/{config-split-page-CdJEkWxv.js → config-split-page-BzfZSyAr.js} +1 -1
- package/dist/assets/{confirm-dialog-BWRNsRgb.js → confirm-dialog-CTcaBp-8.js} +1 -1
- package/dist/assets/desktop-update-config-CExpdkqD.js +1 -0
- package/dist/assets/{dist-CyWdaJvr.js → dist-C59BKqbX.js} +1 -1
- package/dist/assets/{dist-DzM2ZEVN.js → dist-Di6EHp2x.js} +1 -1
- package/dist/assets/{doc-browser-DewXa6oX.js → doc-browser-EZbnEcdk.js} +1 -1
- package/dist/assets/doc-browser-XIwe1Tg-.js +1 -0
- package/dist/assets/{doc-browser-context-CpL2m4Sp.js → doc-browser-context-BzEA1lm1.js} +1 -1
- package/dist/assets/{ellipsis-BDgTYNDX.js → ellipsis-hXUNwi63.js} +1 -1
- package/dist/assets/{es2015-WqekV0OK.js → es2015-CJlVSTh-.js} +1 -1
- package/dist/assets/{external-link-BLjo8z2a.js → external-link-J0fCK-vu.js} +1 -1
- package/dist/assets/host-capabilities-DjiRQ0Q9.js +1 -0
- package/dist/assets/index-DfZTO6Pi.js +101 -0
- package/dist/assets/index-mIb_YMrc.css +1 -0
- package/dist/assets/{key-round-Du8x3sWa.js → key-round-BzYZ0Nno.js} +1 -1
- package/dist/assets/loader-circle-BbdIlBbQ.js +1 -0
- package/dist/assets/mcp-marketplace-page-L22aCzHX.js +40 -0
- package/dist/assets/mcp-marketplace-page-f80Jmv37.js +1 -0
- package/dist/assets/model-config-DkD7vSQT.js +1 -0
- package/dist/assets/{notice-card-3a7FmAz-.js → notice-card-CD9Ok62G.js} +1 -1
- package/dist/assets/play-DHuSeKs8.js +1 -0
- package/dist/assets/plus-DrV685KC.js +1 -0
- package/dist/assets/{popover-BlJLguiZ.js → popover-CoBu3mbV.js} +1 -1
- package/dist/assets/{provider-scoped-model-input-BgPTQa8H.js → provider-scoped-model-input-DZlmTCJU.js} +1 -1
- package/dist/assets/providers-list-CVkWiqIy.js +1 -0
- package/dist/assets/{react-BVjl1ZaK.js → react-C7HsxuKH.js} +1 -1
- package/dist/assets/{refresh-cw-DFR87zei.js → refresh-cw-CVo4nWpq.js} +1 -1
- package/dist/assets/remote-Bznw9iji.js +1 -0
- package/dist/assets/rotate-cw-CXDpRO6D.js +1 -0
- package/dist/assets/{runtime-config-page-DYH2ejUI.js → runtime-config-page-5IycbIxs.js} +1 -1
- package/dist/assets/{save-BDmIlHvN.js → save-Z1QTovIt.js} +1 -1
- package/dist/assets/search-8nY6PGm0.js +1 -0
- package/dist/assets/{search-config-BRsrQ4zK.js → search-config-DEH80WkC.js} +1 -1
- package/dist/assets/{secrets-config-eYdx5_AW.js → secrets-config-Gzo5nDJG.js} +1 -1
- package/dist/assets/{status-dot-SVPjIyG5.js → status-dot-C1-FKgvv.js} +1 -1
- package/dist/assets/{tabs-Czd2mj6z.js → tabs-BqkKwx1R.js} +1 -1
- package/dist/assets/{tabs-custom-Ix4nkp2h.js → tabs-custom-DOkaJZmt.js} +1 -1
- package/dist/assets/{tag-chip-Cdwb3JSH.js → tag-chip-3kpiMTST.js} +1 -1
- package/dist/assets/{tooltip-CKGxLGnG.js → tooltip-Bw-mXQAM.js} +1 -1
- package/dist/assets/{trash-2-yLA8BEcE.js → trash-2-CmIwAJIT.js} +1 -1
- package/dist/assets/x-CSRTOZnM.js +1 -0
- package/dist/index.html +27 -25
- package/package.json +8 -8
- package/src/features/account/components/account-panel.tsx +2 -2
- package/src/features/account/managers/account.manager.ts +6 -5
- package/src/features/chat/components/chat-session-workspace-file-preview.test.tsx +39 -0
- package/src/features/chat/components/chat-session-workspace-file-preview.tsx +11 -4
- package/src/features/chat/components/chat-session-workspace-panel-nav.tsx +45 -13
- package/src/features/chat/components/chat-session-workspace-panel.tsx +20 -8
- package/src/features/chat/components/conversation/chat-conversation-panel.test.tsx +73 -0
- package/src/features/chat/components/conversation/chat-conversation-panel.tsx +4 -0
- package/src/features/chat/components/providers/chat-presenter.provider.tsx +2 -0
- package/src/features/chat/hooks/use-ncp-chat-derived-state.ts +2 -0
- package/src/features/chat/managers/chat-session-list.manager.test.ts +4 -0
- package/src/features/chat/managers/chat-session-list.manager.ts +2 -0
- package/src/features/chat/managers/ncp-chat-thread.manager.test.ts +153 -25
- package/src/features/chat/managers/ncp-chat-thread.manager.ts +153 -7
- package/src/features/chat/pages/ncp-chat-page.tsx +4 -0
- package/src/features/chat/stores/chat-thread.store.test.ts +148 -0
- package/src/features/chat/stores/chat-thread.store.ts +289 -9
- package/src/features/chat/utils/ncp-session-adapter.utils.test.ts +21 -0
- package/src/features/chat/utils/ncp-session-adapter.utils.ts +6 -0
- package/src/features/marketplace/components/marketplace-catalog-grid.tsx +19 -1
- package/src/features/marketplace/components/marketplace-external-skill-source-action.tsx +14 -0
- package/src/features/marketplace/components/marketplace-page-parts.tsx +10 -2
- package/src/features/marketplace/components/marketplace-page.test.tsx +37 -1
- package/src/features/marketplace/components/marketplace-page.tsx +38 -16
- package/src/features/marketplace/components/mcp/mcp-marketplace-page.tsx +1 -0
- package/src/features/marketplace/hooks/use-marketplace.test.tsx +109 -0
- package/src/features/marketplace/hooks/use-marketplace.ts +3 -5
- package/src/features/side-dock/components/side-dock.test.tsx +25 -0
- package/src/features/side-dock/components/side-dock.tsx +13 -0
- package/src/features/system-status/components/desktop-update-config.tsx +2 -1
- package/src/platforms/desktop/types/desktop-update.types.ts +9 -0
- package/src/shared/components/config/provider-form.tsx +2 -2
- package/src/shared/components/doc-browser/managers/doc-browser.manager.ts +39 -32
- package/src/shared/components/ui/action-link.tsx +23 -1
- package/src/shared/lib/api/ncp-session.types.ts +1 -0
- package/src/shared/lib/host-capabilities/host-capability.manager.test.ts +50 -0
- package/src/shared/lib/host-capabilities/host-capability.manager.ts +62 -0
- package/src/shared/lib/host-capabilities/index.ts +1 -0
- package/src/shared/lib/i18n/README.md +16 -3
- package/src/shared/lib/i18n/index.ts +93 -426
- package/src/shared/lib/i18n/locales/en-US/agents.json +49 -0
- package/src/shared/lib/i18n/locales/en-US/channel-auth.json +51 -0
- package/src/shared/lib/i18n/locales/en-US/channels.json +50 -0
- package/src/shared/lib/i18n/locales/en-US/chat.json +181 -0
- package/src/shared/lib/i18n/locales/en-US/core.json +310 -0
- package/src/shared/lib/i18n/locales/en-US/cron.json +32 -0
- package/src/shared/lib/i18n/locales/en-US/desktop-update.json +90 -0
- package/src/shared/lib/i18n/locales/en-US/doc-browser.json +87 -0
- package/src/shared/lib/i18n/locales/en-US/marketplace.json +72 -0
- package/src/shared/lib/i18n/locales/en-US/path-picker.json +12 -0
- package/src/shared/lib/i18n/locales/en-US/pwa.json +26 -0
- package/src/shared/lib/i18n/locales/en-US/remote.json +168 -0
- package/src/shared/lib/i18n/locales/en-US/runtime-control.json +105 -0
- package/src/shared/lib/i18n/locales/en-US/search.json +28 -0
- package/src/shared/lib/i18n/locales/zh-CN/agents.json +49 -0
- package/src/shared/lib/i18n/locales/zh-CN/channel-auth.json +51 -0
- package/src/shared/lib/i18n/locales/zh-CN/channels.json +50 -0
- package/src/shared/lib/i18n/locales/zh-CN/chat.json +181 -0
- package/src/shared/lib/i18n/locales/zh-CN/core.json +310 -0
- package/src/shared/lib/i18n/locales/zh-CN/cron.json +32 -0
- package/src/shared/lib/i18n/locales/zh-CN/desktop-update.json +90 -0
- package/src/shared/lib/i18n/locales/zh-CN/doc-browser.json +87 -0
- package/src/shared/lib/i18n/locales/zh-CN/marketplace.json +72 -0
- package/src/shared/lib/i18n/locales/zh-CN/path-picker.json +12 -0
- package/src/shared/lib/i18n/locales/zh-CN/pwa.json +26 -0
- package/src/shared/lib/i18n/locales/zh-CN/remote.json +168 -0
- package/src/shared/lib/i18n/locales/zh-CN/runtime-control.json +105 -0
- package/src/shared/lib/i18n/locales/zh-CN/search.json +28 -0
- package/src/shared/lib/navigation-history/index.ts +1 -0
- package/src/shared/lib/navigation-history/navigation-history.utils.test.ts +60 -0
- package/src/shared/lib/navigation-history/navigation-history.utils.ts +105 -0
- package/dist/assets/app-presenter-provider-CDSjiqfE.js +0 -3
- package/dist/assets/arrow-left-Dd45Mvr1.js +0 -1
- package/dist/assets/chat-page-YKdeGoVx.js +0 -105
- package/dist/assets/desktop-update-config-CLXdVz9r.js +0 -1
- package/dist/assets/doc-browser-D5FJcAyz.js +0 -1
- package/dist/assets/index-DKflQCOL.js +0 -101
- package/dist/assets/index-Q891JiF_.css +0 -1
- package/dist/assets/loader-circle-Dz4FssYC.js +0 -1
- package/dist/assets/mcp-marketplace-page-BaBuHB2L.js +0 -40
- package/dist/assets/mcp-marketplace-page-ooEvG_bB.js +0 -1
- package/dist/assets/model-config-B-qg70S4.js +0 -1
- package/dist/assets/play-BziM-Y34.js +0 -1
- package/dist/assets/plus-DrpyArC8.js +0 -1
- package/dist/assets/providers-list-cBeeslbc.js +0 -1
- package/dist/assets/remote-DjhVMpVd.js +0 -1
- package/dist/assets/rotate-cw-DMBnsYKm.js +0 -1
- package/dist/assets/search-CjHGYvTI.js +0 -1
- package/dist/assets/x-dpDISboO.js +0 -1
- package/src/shared/lib/i18n/agents.ts +0 -85
- package/src/shared/lib/i18n/channel-auth.constants.ts +0 -87
- package/src/shared/lib/i18n/channels.ts +0 -53
- package/src/shared/lib/i18n/chat-labels.utils.ts +0 -206
- package/src/shared/lib/i18n/cron-labels.utils.ts +0 -32
- package/src/shared/lib/i18n/desktop-update-labels.utils.ts +0 -165
- package/src/shared/lib/i18n/marketplace-labels.utils.ts +0 -78
- package/src/shared/lib/i18n/pwa.ts +0 -62
- package/src/shared/lib/i18n/remote.ts +0 -273
- package/src/shared/lib/i18n/runtime/doc-browser-labels.utils.ts +0 -120
- package/src/shared/lib/i18n/runtime/i18n.path-picker.ts +0 -12
- package/src/shared/lib/i18n/runtime-control-labels.utils.ts +0 -180
- package/src/shared/lib/i18n/search.ts +0 -37
- /package/dist/assets/{config-hints-Ceiol9x4.js → config-hints-fGnUjDe9.js} +0 -0
- /package/dist/assets/{provider-models-C_yOh6DE.js → provider-models-C9VRroK3.js} +0 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
{
|
|
2
|
+
"agentsPageTitle": "Agent 管理",
|
|
3
|
+
"agentsPageDescription": "管理可对话的 Agent 身份。每个 Agent 都有自己的主目录、设定、记忆与技能。",
|
|
4
|
+
"agentsHeroEyebrow": "Agent 管理台",
|
|
5
|
+
"agentsHeroTitle": "让每个 Agent 都像真正的协作者一样存在",
|
|
6
|
+
"agentsHeroDescription": "在这里浏览、创建并切换不同的 Agent 身份。每个 Agent 都有自己的头像、名称、主目录,以及独立的记忆与技能空间。",
|
|
7
|
+
"agentsCreateButton": "新增 Agent",
|
|
8
|
+
"agentsCreateDialogTitle": "创建新的 Agent 身份",
|
|
9
|
+
"agentsCreateDialogDescription": "默认逻辑保持简单。只填必要信息,其余能力继续走统一配置与主目录模板。",
|
|
10
|
+
"agentsCreateDialogHint": "如果你希望让 AI 自动完成全部自定义,也可以继续使用 `nextclaw agents new`。",
|
|
11
|
+
"agentsCreateTitle": "创建 Agent",
|
|
12
|
+
"agentsCreateDescription": "这里提供轻量入口。完整自动化创建链路也可通过 `nextclaw agents new` 使用。",
|
|
13
|
+
"agentsFormIdPlaceholder": "Agent ID,例如 engineer",
|
|
14
|
+
"agentsFormNamePlaceholder": "显示名称,可选",
|
|
15
|
+
"agentsFormDescriptionPlaceholder": "角色描述,可选",
|
|
16
|
+
"agentsFormAvatarPlaceholder": "头像 URL 或本地路径,可选",
|
|
17
|
+
"agentsFormHomePlaceholder": "主目录,可选",
|
|
18
|
+
"agentsFormRuntimePlaceholder": "Runtime(如 native 或 codex,可选)",
|
|
19
|
+
"agentsRuntimeSelectPlaceholder": "选择 Runtime",
|
|
20
|
+
"agentsRuntimeUnavailableHelp": "当前 Runtime 已不在可用列表中;建议改选一个已安装且可用的 Runtime。",
|
|
21
|
+
"agentsCreateAction": "创建 Agent",
|
|
22
|
+
"agentsEditAction": "编辑",
|
|
23
|
+
"agentsEditDialogTitle": "编辑 Agent 身份",
|
|
24
|
+
"agentsEditDialogDescription": "更新名称、角色描述与头像。Agent ID 与主目录保持稳定,避免影响既有记忆、技能与会话。",
|
|
25
|
+
"agentsEditHomeReadonly": "主目录保持不变",
|
|
26
|
+
"agentsEditHomeReadonlyHint": "如需迁移主目录,请走独立配置迁移流程,避免意外丢失 Agent 上下文。",
|
|
27
|
+
"agentsEditSaveAction": "保存编辑",
|
|
28
|
+
"agentsRemoveAction": "移除",
|
|
29
|
+
"agentsNewChat": "新建会话",
|
|
30
|
+
"agentsLoading": "正在加载 Agent...",
|
|
31
|
+
"agentsEmpty": "当前还没有附加 Agent",
|
|
32
|
+
"agentsEmptyDescription": "先创建第一个专职 Agent,让它拥有自己的名字、头像与主目录。",
|
|
33
|
+
"agentsBuiltIn": "内建",
|
|
34
|
+
"agentsCustom": "自定义",
|
|
35
|
+
"agentsOverviewTotal": "全部 Agent",
|
|
36
|
+
"agentsOverviewBuiltIn": "系统主 Agent",
|
|
37
|
+
"agentsOverviewCustom": "专职 Agent",
|
|
38
|
+
"agentsCardBuiltInSummary": "系统主 Agent,适合作为默认入口与总控协作者。",
|
|
39
|
+
"agentsCardCustomSummary": "专属 Agent 身份,可沉淀自己的记忆、技能与角色风格。",
|
|
40
|
+
"agentsCardRuntimeLabel": "Runtime",
|
|
41
|
+
"agentsCardHomeLabel": "主目录",
|
|
42
|
+
"agentsCardAvatarLabel": "Avatar",
|
|
43
|
+
"agentsCardStartChat": "开始对话",
|
|
44
|
+
"agentsCardBuiltInTag": "系统主",
|
|
45
|
+
"agentsCardCustomTag": "专职",
|
|
46
|
+
"chatDraftAgentTitle": "本次会话 Agent",
|
|
47
|
+
"chatDraftAgentDescription": "创建后不可切换",
|
|
48
|
+
"chatDraftAgentCurrent": "当前 Agent"
|
|
49
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"weixinAuthTitle": "扫码连接微信",
|
|
3
|
+
"weixinAuthDescription": "微信渠道现在以扫码连接为主流程。",
|
|
4
|
+
"weixinAuthHint": "通常只需要点击按钮并扫码确认,连接成功后会自动写入配置。",
|
|
5
|
+
"weixinAuthCapabilityHint": "连接成功后,Agent 可以通过微信渠道向已知微信用户主动发消息。",
|
|
6
|
+
"weixinAuthPrimaryAccount": "当前默认账号",
|
|
7
|
+
"weixinAuthConnectedAccounts": "已连接账号",
|
|
8
|
+
"weixinAuthBaseUrl": "当前接口地址",
|
|
9
|
+
"weixinAuthConnect": "扫码连接微信",
|
|
10
|
+
"weixinAuthReconnect": "重新扫码连接",
|
|
11
|
+
"weixinAuthStarting": "正在生成二维码...",
|
|
12
|
+
"weixinAuthWaiting": "等待扫码确认",
|
|
13
|
+
"weixinAuthScanned": "已扫码,等待确认",
|
|
14
|
+
"weixinAuthAuthorized": "已连接",
|
|
15
|
+
"weixinAuthConnectedDisabled": "已连接,但渠道未启用",
|
|
16
|
+
"weixinAuthNotConnected": "未连接",
|
|
17
|
+
"weixinAuthDisabledHint": "当前账号已完成扫码连接,但渠道处于未启用状态。打开 Enabled 后才会开始收发消息。",
|
|
18
|
+
"weixinAuthRetryRequired": "二维码已失效,请重新扫码。",
|
|
19
|
+
"weixinAuthQrAlt": "微信登录二维码",
|
|
20
|
+
"weixinAuthScanPrompt": "请用微信扫码,并在手机上确认登录。",
|
|
21
|
+
"weixinAuthExpiresAt": "二维码过期时间",
|
|
22
|
+
"weixinAuthOpenQr": "新窗口打开二维码",
|
|
23
|
+
"weixinAuthReadyTitle": "准备连接微信",
|
|
24
|
+
"weixinAuthReadyDescription": "点击左侧按钮后,这里会显示二维码。整个首配流程默认不需要手动填写底层参数。",
|
|
25
|
+
"weixinAuthAdvancedTitle": "高级设置",
|
|
26
|
+
"weixinAuthAdvancedDescription": "仅在你需要自定义接口地址、账号映射或白名单时再展开这些字段。",
|
|
27
|
+
"feishuAuthTitle": "扫码连接飞书",
|
|
28
|
+
"feishuAuthCreateNew": "创建新智能体",
|
|
29
|
+
"feishuAuthConnectExisting": "连接已有智能体",
|
|
30
|
+
"feishuAuthDescription": "飞书渠道使用扫码创建新的智能体,不再要求手动复制应用凭证。",
|
|
31
|
+
"feishuAuthHint": "点击按钮后用飞书扫码确认,连接成功后会自动保存新智能体凭证并启用 WebSocket 收发。",
|
|
32
|
+
"feishuAuthCapabilityHint": "连接成功后,Agent 可以通过飞书自建应用收发私聊和群聊消息。",
|
|
33
|
+
"feishuAuthDisabledHint": "当前飞书应用已完成扫码连接,但渠道处于未启用状态。打开 Enabled 后才会开始收发消息。",
|
|
34
|
+
"feishuAuthConnect": "扫码连接飞书",
|
|
35
|
+
"feishuAuthQrAlt": "飞书智能体创建二维码",
|
|
36
|
+
"feishuAuthScanPrompt": "请用飞书扫码,并按页面提示完成智能体创建授权。",
|
|
37
|
+
"feishuAuthReadyTitle": "准备连接飞书",
|
|
38
|
+
"feishuAuthReadyDescription": "点击左侧按钮后,这里会显示智能体创建二维码。已有智能体请切换到连接入口。",
|
|
39
|
+
"feishuAuthAdvancedTitle": "高级设置",
|
|
40
|
+
"feishuAuthAdvancedDescription": "仅在你需要切换 Feishu/Lark 域名、指定默认账号、白名单或群聊策略时再展开这些字段。",
|
|
41
|
+
"feishuAuthDomain": "飞书平台",
|
|
42
|
+
"feishuPlatform": "平台",
|
|
43
|
+
"feishuExistingAgentTitle": "连接已有飞书智能体",
|
|
44
|
+
"feishuExistingAgentDescription": "填入已有智能体的 App ID 和 App Secret。",
|
|
45
|
+
"feishuExistingAgentHint": "在飞书开放平台选择已有智能体,进入基础信息里的凭证与基础信息,然后复制凭证回来验证。",
|
|
46
|
+
"feishuExistingAgentOpenFeishuList": "打开飞书智能体列表",
|
|
47
|
+
"feishuExistingAgentOpenLarkList": "打开 Lark 智能体列表",
|
|
48
|
+
"feishuExistingAgentConnect": "验证并连接",
|
|
49
|
+
"feishuExistingAgentConnecting": "正在验证",
|
|
50
|
+
"feishuExistingAgentConnectSuccess": "飞书智能体已连接"
|
|
51
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
{
|
|
2
|
+
"channelsPageTitle": "消息渠道",
|
|
3
|
+
"channelsPageDescription": "在一个页面中连续筛选、切换并配置各个消息渠道。",
|
|
4
|
+
"channelsLoading": "加载渠道中...",
|
|
5
|
+
"channelsTabEnabled": "已启用",
|
|
6
|
+
"channelsTabAll": "全部渠道",
|
|
7
|
+
"channelsFilterPlaceholder": "搜索渠道",
|
|
8
|
+
"channelsNoMatch": "没有匹配的渠道",
|
|
9
|
+
"channelsSelectTitle": "选择左侧渠道开始配置",
|
|
10
|
+
"channelsSelectDescription": "你可以连续切换多个渠道并逐个保存配置。",
|
|
11
|
+
"channelsFormDescription": "配置消息渠道参数",
|
|
12
|
+
"channelsEmptyTitle": "暂无启用渠道",
|
|
13
|
+
"channelsEmptyDescription": "启用一个消息渠道以开始接收消息。",
|
|
14
|
+
"channelDescriptionDefault": "配置该通信渠道",
|
|
15
|
+
"channelDescTelegram": "连接 Telegram 机器人以进行即时消息收发",
|
|
16
|
+
"channelDescSlack": "接入 Slack 工作区进行团队协作消息处理",
|
|
17
|
+
"channelDescEmail": "通过邮件协议收发消息",
|
|
18
|
+
"channelDescWebhook": "接收 HTTP Webhook 以支持自定义集成",
|
|
19
|
+
"channelDescDiscord": "将 Discord 机器人连接到你的社区服务器",
|
|
20
|
+
"channelDescFeishu": "企业消息与协作平台接入",
|
|
21
|
+
"channelDescWeixin": "通过微信扫码登录并使用长轮询收发个人微信消息",
|
|
22
|
+
"configureMessageChannelParameters": "配置消息渠道参数",
|
|
23
|
+
"channelsGuideTitle": "查看指南",
|
|
24
|
+
"allowFrom": "允许来源",
|
|
25
|
+
"token": "Token",
|
|
26
|
+
"botToken": "Bot Token",
|
|
27
|
+
"appToken": "App Token",
|
|
28
|
+
"appId": "App ID",
|
|
29
|
+
"domain": "域名",
|
|
30
|
+
"corpId": "企业 ID",
|
|
31
|
+
"agentId": "应用 Agent ID",
|
|
32
|
+
"appSecret": "App Secret",
|
|
33
|
+
"markdownSupport": "Markdown 支持",
|
|
34
|
+
"clientId": "Client ID",
|
|
35
|
+
"clientSecret": "Client Secret",
|
|
36
|
+
"encryptKey": "加密密钥",
|
|
37
|
+
"verificationToken": "验证令牌",
|
|
38
|
+
"bridgeUrl": "桥接 URL",
|
|
39
|
+
"gatewayUrl": "网关 URL",
|
|
40
|
+
"proxy": "代理",
|
|
41
|
+
"intents": "Intents",
|
|
42
|
+
"mode": "模式",
|
|
43
|
+
"webhookPath": "Webhook 路径",
|
|
44
|
+
"callbackPort": "回调端口",
|
|
45
|
+
"callbackPath": "回调路径",
|
|
46
|
+
"defaultAccountId": "默认账号 ID",
|
|
47
|
+
"pollTimeoutMs": "长轮询超时(毫秒)",
|
|
48
|
+
"accountsJson": "账号配置 JSON",
|
|
49
|
+
"groupPolicy": "群组策略"
|
|
50
|
+
}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
{
|
|
2
|
+
"chatPageTitle": "Agent 对话",
|
|
3
|
+
"chatPageDescription": "在 UI 内直接与 Agent 交互,支持多会话与多 Agent 切换。",
|
|
4
|
+
"chatRefresh": "刷新",
|
|
5
|
+
"chatNewSession": "新会话",
|
|
6
|
+
"chatSearchSessionPlaceholder": "搜索会话 key / 标签",
|
|
7
|
+
"chatAgentLabel": "目标 Agent",
|
|
8
|
+
"chatSelectAgent": "选择 Agent",
|
|
9
|
+
"chatModelLabel": "对话模型",
|
|
10
|
+
"chatSelectModel": "选择模型",
|
|
11
|
+
"chatThinkingLevelOff": "思考关闭",
|
|
12
|
+
"chatThinkingLevelMinimal": "思考 Minimal",
|
|
13
|
+
"chatThinkingLevelLow": "思考 Low",
|
|
14
|
+
"chatThinkingLevelMedium": "思考 Medium",
|
|
15
|
+
"chatThinkingLevelHigh": "思考 High",
|
|
16
|
+
"chatThinkingLevelAdaptive": "思考 Adaptive",
|
|
17
|
+
"chatThinkingLevelXhigh": "思考 XHigh",
|
|
18
|
+
"chatSessionTypeLabel": "会话类型",
|
|
19
|
+
"chatSessionTypeNative": "原生",
|
|
20
|
+
"chatSessionTypeCodex": "Codex",
|
|
21
|
+
"chatSessionTypeClaude": "Claude Code",
|
|
22
|
+
"chatSessionTypeWeixin": "微信",
|
|
23
|
+
"chatSessionTypeFeishu": "飞书",
|
|
24
|
+
"chatSessionTypeCron": "定时任务",
|
|
25
|
+
"chatSessionTypeUnavailableSuffix": "当前不可用,请启用对应运行时或新建 Native 会话。",
|
|
26
|
+
"chatModelNoOptions": "暂无可用模型,请先配置提供商。",
|
|
27
|
+
"chatGoConfigureProvider": "去配置提供商",
|
|
28
|
+
"chatProviderSetupTitle": "开始前先配置提供商",
|
|
29
|
+
"chatProviderSetupDescription": "你还没有可用模型。先在提供商页面配置并保存至少一个 Provider 后,再回来开始对话。",
|
|
30
|
+
"chatSessionLabel": "当前会话",
|
|
31
|
+
"chatNoSession": "未选择会话",
|
|
32
|
+
"chatHistoryLoading": "加载会话历史中...",
|
|
33
|
+
"chatBackToParent": "返回父会话",
|
|
34
|
+
"chatSessionOpenChildSessions": "查看子会话",
|
|
35
|
+
"chatSessionOpenCronJobs": "查看本会话定时任务",
|
|
36
|
+
"chatChildSessionLoading": "正在加载子会话…",
|
|
37
|
+
"chatChildSessionEmpty": "子会话还没有消息。",
|
|
38
|
+
"chatWorkspaceBack": "工作区后退",
|
|
39
|
+
"chatWorkspaceForward": "工作区前进",
|
|
40
|
+
"chatWorkspaceClosePanel": "关闭工作区侧栏",
|
|
41
|
+
"chatWorkspaceChildSessions": "子会话",
|
|
42
|
+
"chatWorkspaceOpenFiles": "打开的文件",
|
|
43
|
+
"chatWorkspacePreview": "预览",
|
|
44
|
+
"chatWorkspaceDiff": "Diff",
|
|
45
|
+
"chatWorkspaceCloseFile": "关闭文件",
|
|
46
|
+
"chatWorkspaceLoadingFile": "正在加载文件…",
|
|
47
|
+
"chatWorkspacePreviewUnsupported": "该文件暂不支持在侧栏预览。",
|
|
48
|
+
"chatWorkspacePreviewEmpty": "当前没有可显示的文件内容。",
|
|
49
|
+
"chatWorkspaceDiffEmpty": "当前没有可显示的 diff 内容。",
|
|
50
|
+
"chatWorkspacePreviewTruncated": "内容已截断",
|
|
51
|
+
"chatWorkspaceSessionCronJobs": "本会话定时任务",
|
|
52
|
+
"chatWorkspaceCronJobEmpty": "这个会话暂无定时任务。",
|
|
53
|
+
"chatSessionUnread": "会话有未读更新",
|
|
54
|
+
"chatTyping": "Agent 正在思考...",
|
|
55
|
+
"chatRuntimeInitializing": "聊天能力正在初始化。你可以先输入内容,完成后即可发送。",
|
|
56
|
+
"chatRuntimeInitializationFailed": "聊天能力启动失败,请稍后重试或检查服务日志。",
|
|
57
|
+
"chatInputPlaceholder": "输入消息,输入 / 选择技能,Enter 发送,Shift + Enter 换行",
|
|
58
|
+
"chatInputPlaceholderCompact": "发消息...",
|
|
59
|
+
"chatInputHint": "支持多轮上下文,默认走当前会话。",
|
|
60
|
+
"chatSlashSectionCommands": "命令",
|
|
61
|
+
"chatSlashSectionSkills": "技能",
|
|
62
|
+
"chatSlashTypeCommand": "命令",
|
|
63
|
+
"chatSlashTypeSkill": "技能",
|
|
64
|
+
"chatSlashSkillSpec": "标识",
|
|
65
|
+
"chatSlashSkillScope": "作用域",
|
|
66
|
+
"chatSlashLoading": "加载命令与技能中…",
|
|
67
|
+
"chatSlashNoResult": "无匹配项",
|
|
68
|
+
"chatSlashHint": "输入 / 触发命令或技能选择",
|
|
69
|
+
"chatSlashCommandHint": "回车插入命令,继续输入参数后发送。",
|
|
70
|
+
"chatSlashSkillHint": "回车把该技能加入本轮请求。",
|
|
71
|
+
"chatSkillScopeBuiltin": "内建",
|
|
72
|
+
"chatSkillScopeProject": "项目",
|
|
73
|
+
"chatSkillScopeWorkspace": "工作区",
|
|
74
|
+
"chatPickerRecent": "最近使用",
|
|
75
|
+
"chatPickerRecentModels": "最近选择",
|
|
76
|
+
"chatPickerAllModels": "全部模型",
|
|
77
|
+
"chatPickerAllSkills": "全部技能",
|
|
78
|
+
"chatSend": "发送",
|
|
79
|
+
"chatStop": "停止",
|
|
80
|
+
"chatStopPreparing": "正在建立可停止会话,请稍候…",
|
|
81
|
+
"chatStopUnavailable": "当前后端引擎不支持手动停止。",
|
|
82
|
+
"chatContextWindow": "上下文窗口",
|
|
83
|
+
"chatContextWindowUsed": "预计占用",
|
|
84
|
+
"chatContextWindowTotal": "总窗口",
|
|
85
|
+
"chatContextWindowAvailable": "剩余",
|
|
86
|
+
"chatContextWindowPruned": "安全裁剪后",
|
|
87
|
+
"chatContextWindowDroppedHistory": "已丢弃历史消息",
|
|
88
|
+
"chatContextWindowTruncatedTools": "已截断工具结果",
|
|
89
|
+
"chatContextWindowUpdatedAt": "更新时间",
|
|
90
|
+
"chatContextCompactionCompressing": "正在压缩较早上下文",
|
|
91
|
+
"chatContextCompactionCompressed": "较早上下文已自动压缩",
|
|
92
|
+
"chatContextCompactionCoveredMessages": "覆盖消息数",
|
|
93
|
+
"chatContextCompactionOriginalTokens": "压缩前估算",
|
|
94
|
+
"chatContextCompactionProjectedTokens": "压缩后估算",
|
|
95
|
+
"chatSending": "发送中...",
|
|
96
|
+
"chatQueueSend": "排队发送",
|
|
97
|
+
"chatQueuedHintPrefix": "当前有",
|
|
98
|
+
"chatQueuedHintSuffix": "条消息待发送。",
|
|
99
|
+
"chatQueueMoveFirst": "置顶到下一条",
|
|
100
|
+
"chatDeleteSession": "删除会话",
|
|
101
|
+
"chatDeleteSessionConfirm": "确认删除当前会话?",
|
|
102
|
+
"chatSessionMoreActions": "更多操作",
|
|
103
|
+
"chatSessionSetProject": "设置项目目录",
|
|
104
|
+
"chatSessionClearProject": "清除项目目录",
|
|
105
|
+
"chatSessionProjectDialogTitle": "设置项目目录",
|
|
106
|
+
"chatSessionProjectDialogDescription": "把当前会话绑定到运行 NextClaw 服务的那台机器上的一个目录,让后续消息和工具执行围绕这个目录展开。",
|
|
107
|
+
"chatSessionProjectPathLabel": "项目目录路径",
|
|
108
|
+
"chatSessionProjectPathPlaceholder": "/path/to/project",
|
|
109
|
+
"chatSessionProjectUpdateHint": "这里浏览和选择的是服务端机器上的目录。修改项目目录只影响后续消息和后续工具执行,不会改写历史会话。",
|
|
110
|
+
"chatSessionProjectUpdated": "项目目录已更新",
|
|
111
|
+
"chatSessionProjectCleared": "项目目录已清除",
|
|
112
|
+
"chatSendFailed": "发送消息失败",
|
|
113
|
+
"chatRoleUser": "你",
|
|
114
|
+
"chatRoleAssistant": "助手",
|
|
115
|
+
"chatRoleTool": "工具",
|
|
116
|
+
"chatRoleSystem": "系统",
|
|
117
|
+
"chatRoleMessage": "消息",
|
|
118
|
+
"chatToolCall": "工具调用",
|
|
119
|
+
"chatToolResult": "工具结果",
|
|
120
|
+
"chatToolInput": "输入",
|
|
121
|
+
"chatToolWorkflow": "工具工作流",
|
|
122
|
+
"chatToolWorkflowDetails": "展开查看参数和结果",
|
|
123
|
+
"chatToolOutput": "输出",
|
|
124
|
+
"chatToolNoOutput": "无输出(执行完成)",
|
|
125
|
+
"chatToolStatusPreparing": "准备中",
|
|
126
|
+
"chatToolStatusRunning": "执行中",
|
|
127
|
+
"chatToolStatusCompleted": "已完成",
|
|
128
|
+
"chatToolStatusFailed": "失败",
|
|
129
|
+
"chatToolStatusCancelled": "已取消",
|
|
130
|
+
"chatReasoning": "推理过程",
|
|
131
|
+
"chatImageAttachment": "图片附件",
|
|
132
|
+
"chatFileAttachment": "文件附件",
|
|
133
|
+
"chatAttachmentOpen": "打开",
|
|
134
|
+
"chatAttachmentAttached": "已附加",
|
|
135
|
+
"chatAttachmentCategoryArchive": "压缩包",
|
|
136
|
+
"chatAttachmentCategoryAudio": "音频",
|
|
137
|
+
"chatAttachmentCategoryCode": "代码文件",
|
|
138
|
+
"chatAttachmentCategoryData": "数据文件",
|
|
139
|
+
"chatAttachmentCategoryDocument": "文档",
|
|
140
|
+
"chatAttachmentCategoryGeneric": "文件",
|
|
141
|
+
"chatAttachmentCategoryImage": "图片",
|
|
142
|
+
"chatAttachmentCategoryPdf": "PDF 文档",
|
|
143
|
+
"chatAttachmentCategorySheet": "表格",
|
|
144
|
+
"chatAttachmentCategoryVideo": "视频",
|
|
145
|
+
"chatUnknownPart": "未知消息片段",
|
|
146
|
+
"chatCodeCopy": "复制代码",
|
|
147
|
+
"chatCodeCopied": "已复制",
|
|
148
|
+
"chatMessageCopy": "复制",
|
|
149
|
+
"chatMessageCopied": "已复制",
|
|
150
|
+
"chatSidebarNewTask": "新任务",
|
|
151
|
+
"chatSidebarSearchPlaceholder": "搜索对话...",
|
|
152
|
+
"chatSidebarScheduledTasks": "定时任务",
|
|
153
|
+
"chatSidebarSkills": "技能",
|
|
154
|
+
"chatSidebarTaskRecords": "会话记录",
|
|
155
|
+
"chatSidebarViewTime": "时间",
|
|
156
|
+
"chatSidebarViewProject": "项目",
|
|
157
|
+
"chatSidebarToday": "今天",
|
|
158
|
+
"chatSidebarYesterday": "昨天",
|
|
159
|
+
"chatSidebarPrevious7Days": "近 7 天",
|
|
160
|
+
"chatSidebarOlder": "更早",
|
|
161
|
+
"chatSidebarProjectViewEmpty": "还没有绑定项目的会话",
|
|
162
|
+
"chatWelcomeTitle": "你好,有什么可以帮你的吗?",
|
|
163
|
+
"chatWelcomeSubtitle": "开始一个新任务或选择已有对话",
|
|
164
|
+
"chatWelcomeCapability1Title": "智能对话",
|
|
165
|
+
"chatWelcomeCapability1Desc": "多轮上下文对话,支持多种 AI 模型",
|
|
166
|
+
"chatWelcomeCapability2Title": "技能扩展",
|
|
167
|
+
"chatWelcomeCapability2Desc": "通过安装技能扩展 Agent 能力",
|
|
168
|
+
"chatWelcomeCapability3Title": "定时任务",
|
|
169
|
+
"chatWelcomeCapability3Desc": "设置定时执行的自动化任务",
|
|
170
|
+
"chatSkillsPickerTitle": "技能",
|
|
171
|
+
"chatSkillsPickerEmpty": "暂无已安装技能",
|
|
172
|
+
"chatSkillsPickerSearchPlaceholder": "搜索技能",
|
|
173
|
+
"chatSkillsPickerNoDescription": "暂无描述",
|
|
174
|
+
"chatSkillsPickerOfficial": "官方",
|
|
175
|
+
"chatSkillsPickerManage": "管理技能",
|
|
176
|
+
"chatInputAttach": "添加附件",
|
|
177
|
+
"chatInputAttachmentUnsupported": "当前上传流程不支持该文件类型。",
|
|
178
|
+
"chatInputAttachmentTooLarge": "文件不能超过 {maxMb} MB。",
|
|
179
|
+
"chatInputAttachmentReadFailed": "读取文件失败,请重试。",
|
|
180
|
+
"chatInputAttachComingSoon": "即将支持"
|
|
181
|
+
}
|
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
{
|
|
2
|
+
"chat": "对话",
|
|
3
|
+
"model": "模型",
|
|
4
|
+
"searchChannels": "搜索渠道",
|
|
5
|
+
"providers": "提供商",
|
|
6
|
+
"channels": "渠道",
|
|
7
|
+
"cron": "定时任务",
|
|
8
|
+
"secrets": "密钥管理",
|
|
9
|
+
"runtime": "路由与运行时",
|
|
10
|
+
"remote": "远程访问",
|
|
11
|
+
"marketplace": "市场",
|
|
12
|
+
"advanced": "高级",
|
|
13
|
+
"settings": "设置",
|
|
14
|
+
"security": "安全",
|
|
15
|
+
"backToMain": "返回主界面",
|
|
16
|
+
"enabled": "启用",
|
|
17
|
+
"disabled": "禁用",
|
|
18
|
+
"save": "保存",
|
|
19
|
+
"cancel": "取消",
|
|
20
|
+
"delete": "删除",
|
|
21
|
+
"add": "添加",
|
|
22
|
+
"edit": "编辑",
|
|
23
|
+
"loading": "加载中...",
|
|
24
|
+
"success": "成功",
|
|
25
|
+
"error": "错误",
|
|
26
|
+
"confirm": "确认",
|
|
27
|
+
"unchanged": "未修改",
|
|
28
|
+
"saving": "保存中...",
|
|
29
|
+
"remove": "移除",
|
|
30
|
+
"more": "更多",
|
|
31
|
+
"all": "全部",
|
|
32
|
+
"yes": "是",
|
|
33
|
+
"no": "否",
|
|
34
|
+
"prev": "上一页",
|
|
35
|
+
"next": "下一页",
|
|
36
|
+
"noneOption": "无",
|
|
37
|
+
"language": "语言",
|
|
38
|
+
"theme": "主题",
|
|
39
|
+
"themeWarm": "暖色",
|
|
40
|
+
"themeCool": "冷色",
|
|
41
|
+
"isRequired": "必填",
|
|
42
|
+
"duplicate": "重复",
|
|
43
|
+
"notFound": "未找到",
|
|
44
|
+
"modelPageTitle": "模型配置",
|
|
45
|
+
"modelPageDescription": "配置默认 AI 模型选择",
|
|
46
|
+
"defaultModel": "默认模型",
|
|
47
|
+
"workspace": "工作空间",
|
|
48
|
+
"modelName": "模型",
|
|
49
|
+
"modelPickerNoOptions": "暂无可选模型",
|
|
50
|
+
"modelPickerUseCustom": "使用自定义模型:{value}",
|
|
51
|
+
"modelInputCustomHint": "如果列表里没有目标模型,可直接输入自定义模型 ID。",
|
|
52
|
+
"modelIdentifierHelp": "智能体默认模型标识,使用带提供商前缀的格式。例如:openai/gpt-5.1、anthropic/claude-opus-4-1、deepseek/deepseek-chat、minimax/MiniMax-M2.5、openrouter/openai/gpt-5.3-codex。",
|
|
53
|
+
"maxToolIterations": "最大工具迭代次数",
|
|
54
|
+
"saveChanges": "保存变更",
|
|
55
|
+
"providersPageTitle": "AI 提供商",
|
|
56
|
+
"providersPageDescription": "在一个页面内完成提供商切换、配置与保存。",
|
|
57
|
+
"providersLoading": "加载中...",
|
|
58
|
+
"providersTabConfigured": "已配置",
|
|
59
|
+
"providersTabAll": "全部提供商",
|
|
60
|
+
"providersFilterPlaceholder": "搜索提供商",
|
|
61
|
+
"providersNoMatch": "没有匹配的提供商",
|
|
62
|
+
"providerAdd": "新增提供商",
|
|
63
|
+
"providerAddCustom": "新增自定义提供商",
|
|
64
|
+
"providerTemplatePickerTitle": "选择提供商模板",
|
|
65
|
+
"providerDelete": "删除该提供商",
|
|
66
|
+
"providerDeleteConfirm": "确认删除这个提供商吗?删除后不可恢复。",
|
|
67
|
+
"providersSelectPlaceholder": "选择提供商",
|
|
68
|
+
"providersSelectTitle": "选择左侧提供商开始配置",
|
|
69
|
+
"providersSelectDescription": "你可以连续切换多个提供商并逐个保存配置。",
|
|
70
|
+
"providersDefaultDescription": "为你的智能体配置 AI 服务",
|
|
71
|
+
"providersEmptyTitle": "尚未配置提供商",
|
|
72
|
+
"providersEmptyDescription": "添加一个 AI 提供商后即可开始使用。",
|
|
73
|
+
"apiKey": "API 密钥",
|
|
74
|
+
"apiBase": "API Base URL",
|
|
75
|
+
"extraHeaders": "额外请求头",
|
|
76
|
+
"wireApi": "请求接口",
|
|
77
|
+
"wireApiAuto": "自动(优先 Chat,必要时 Responses)",
|
|
78
|
+
"wireApiChat": "Chat Completions",
|
|
79
|
+
"wireApiResponses": "Responses",
|
|
80
|
+
"apiKeySet": "已设置",
|
|
81
|
+
"apiKeyNotSet": "未设置",
|
|
82
|
+
"showKey": "显示密钥",
|
|
83
|
+
"hideKey": "隐藏密钥",
|
|
84
|
+
"providerFormDescription": "配置 AI 提供商的 API 密钥与参数",
|
|
85
|
+
"providerDisplayName": "自定义名称",
|
|
86
|
+
"providerDisplayNamePlaceholder": "例如:中转站 A",
|
|
87
|
+
"providerDisplayNameHelp": "仅用于界面展示,便于区分多个自定义 Provider。",
|
|
88
|
+
"enterApiKey": "请输入 API 密钥",
|
|
89
|
+
"providerApiBaseHelp": "留空或恢复默认即可使用预置 API Base。",
|
|
90
|
+
"providerApiBaseHelpMinimax": "MiniMax 中国区请使用 https://api.minimaxi.com/v1;海外请使用 https://api.minimax.io/v1。",
|
|
91
|
+
"providerOpenAICompatHint": "自定义提供商默认按 OpenAI 兼容 API 格式接入(Chat Completions / Responses)。",
|
|
92
|
+
"providerExtraHeadersHelp": "用于自定义请求头(可选)。",
|
|
93
|
+
"providerTestConnection": "测试连接",
|
|
94
|
+
"providerTestingConnection": "测试中...",
|
|
95
|
+
"providerTestConnectionSuccess": "连接测试通过",
|
|
96
|
+
"providerTestConnectionFailed": "连接测试失败",
|
|
97
|
+
"providerModelsTitle": "可用模型列表",
|
|
98
|
+
"providerModelInputPlaceholder": "输入模型 ID(无需 provider 前缀,不在列表也可)",
|
|
99
|
+
"providerModelInputHint": "列表仅作参考,不在列表也可直接输入并添加。",
|
|
100
|
+
"providerAddModel": "添加模型",
|
|
101
|
+
"providerModelsEmpty": "当前没有模型,可直接输入并添加。",
|
|
102
|
+
"providerModelDefaultTag": "默认",
|
|
103
|
+
"providerModelCustomTag": "自定义",
|
|
104
|
+
"providerModelsHelp": "系统会先填充预置模型;你可以在这里新增或删除。请填写当前提供商自己的模型 ID(不带当前 provider 前缀);若输入带当前 provider 前缀会自动去除,但会保留后续路径(如 openai/gpt-5)。",
|
|
105
|
+
"providerModelsEmptyShort": "暂无可用模型",
|
|
106
|
+
"providerAddFirstModel": "添加第一个模型",
|
|
107
|
+
"providerModelVisionTitle": "Vision",
|
|
108
|
+
"providerModelVisionHint": "允许向该模型发送图片输入。",
|
|
109
|
+
"providerModelThinkingTitle": "思考档位能力",
|
|
110
|
+
"providerModelThinkingHint": "为该模型声明可切换的思考档位,聊天会话将按这里的能力展示下拉。",
|
|
111
|
+
"providerModelThinkingDefault": "默认思考档位",
|
|
112
|
+
"providerModelThinkingDefaultNone": "无默认(回落 off)",
|
|
113
|
+
"providerModelThinkingNoSupported": "请先至少选择一个支持档位。",
|
|
114
|
+
"providerModelInvalidProviderPrefix": "模型 ID 不能使用其他 provider 前缀。",
|
|
115
|
+
"providerDisplayNameHelpShort": "便于区分多个自定义提供商",
|
|
116
|
+
"providerApiBaseHelpShort": "一般只需填写域名,系统自动补全路径",
|
|
117
|
+
"providerExtraHeadersHelpShort": "可选,用于自定义鉴权等场景",
|
|
118
|
+
"providerAdvancedSettings": "高级设置",
|
|
119
|
+
"providerAuthSectionTitle": "提供商授权",
|
|
120
|
+
"providerAuthStarting": "启动中...",
|
|
121
|
+
"providerAuthAuthorizing": "授权中...",
|
|
122
|
+
"providerAuthAuthorizeInBrowser": "浏览器授权",
|
|
123
|
+
"providerAuthWaitingBrowser": "等待浏览器完成授权...",
|
|
124
|
+
"providerAuthCompleted": "授权已完成。",
|
|
125
|
+
"providerAuthOpenPrompt": "请在浏览器完成授权,验证码:",
|
|
126
|
+
"providerAuthOpenPromptSuffix": "",
|
|
127
|
+
"providerAuthStartFailed": "启动授权失败",
|
|
128
|
+
"providerAuthMethodLabel": "授权区域",
|
|
129
|
+
"providerAuthMethodPlaceholder": "请选择授权方式",
|
|
130
|
+
"providerAuthImportFromCli": "从 Qwen CLI 导入",
|
|
131
|
+
"providerAuthImporting": "导入中...",
|
|
132
|
+
"providerAuthImportSuccess": "已从 CLI 导入凭证。",
|
|
133
|
+
"providerAuthImportStatusPrefix": "CLI 导入成功。",
|
|
134
|
+
"providerAuthImportFailed": "导入凭证失败",
|
|
135
|
+
"providerAuthSessionLabel": "会话",
|
|
136
|
+
"resetToDefault": "恢复默认",
|
|
137
|
+
"leaveBlankToKeepUnchanged": "留空则保持不变",
|
|
138
|
+
"consentGranted": "同意条款",
|
|
139
|
+
"imapHost": "IMAP 服务器",
|
|
140
|
+
"imapPort": "IMAP 端口",
|
|
141
|
+
"imapUsername": "IMAP 用户名",
|
|
142
|
+
"imapPassword": "IMAP 密码",
|
|
143
|
+
"imapMailbox": "IMAP 邮箱",
|
|
144
|
+
"imapUseSsl": "IMAP 使用 SSL",
|
|
145
|
+
"smtpHost": "SMTP 服务器",
|
|
146
|
+
"smtpPort": "SMTP 端口",
|
|
147
|
+
"smtpUsername": "SMTP 用户名",
|
|
148
|
+
"smtpPassword": "SMTP 密码",
|
|
149
|
+
"smtpUseTls": "SMTP 使用 TLS",
|
|
150
|
+
"smtpUseSsl": "SMTP 使用 SSL",
|
|
151
|
+
"fromAddress": "发件地址",
|
|
152
|
+
"autoReplyEnabled": "自动回复已启用",
|
|
153
|
+
"pollIntervalSeconds": "轮询间隔(秒)",
|
|
154
|
+
"markSeen": "标记为已读",
|
|
155
|
+
"maxBodyChars": "最大正文字符数",
|
|
156
|
+
"subjectPrefix": "主题前缀",
|
|
157
|
+
"baseUrl": "Base URL",
|
|
158
|
+
"socketUrl": "Socket URL",
|
|
159
|
+
"socketPath": "Socket 路径",
|
|
160
|
+
"socketDisableMsgpack": "禁用 Msgpack",
|
|
161
|
+
"socketReconnectDelayMs": "重连延迟(ms)",
|
|
162
|
+
"socketMaxReconnectDelayMs": "最大重连延迟(ms)",
|
|
163
|
+
"socketConnectTimeoutMs": "连接超时(ms)",
|
|
164
|
+
"refreshIntervalMs": "刷新间隔(ms)",
|
|
165
|
+
"watchTimeoutMs": "监视超时(ms)",
|
|
166
|
+
"watchLimit": "监视限制",
|
|
167
|
+
"retryDelayMs": "重试延迟(ms)",
|
|
168
|
+
"maxRetryAttempts": "最大重试次数",
|
|
169
|
+
"clawToken": "Claw Token",
|
|
170
|
+
"agentUserId": "代理用户ID",
|
|
171
|
+
"sessions": "会话",
|
|
172
|
+
"panels": "面板",
|
|
173
|
+
"mentionRequireInGroups": "群组中需要@",
|
|
174
|
+
"groups": "群组",
|
|
175
|
+
"replyDelayMode": "回复延迟模式",
|
|
176
|
+
"replyDelayMs": "回复延迟(ms)",
|
|
177
|
+
"secret": "密钥",
|
|
178
|
+
"accountId": "账号 ID",
|
|
179
|
+
"dmPolicy": "私聊策略",
|
|
180
|
+
"groupAllowFrom": "群组允许来源",
|
|
181
|
+
"requireMention": "需要 @ 提及",
|
|
182
|
+
"mentionPatterns": "提及匹配规则",
|
|
183
|
+
"groupRulesJson": "群组规则(JSON)",
|
|
184
|
+
"allowBotMessages": "允许机器人消息",
|
|
185
|
+
"attachmentMaxSizeMb": "附件最大体积(MB)",
|
|
186
|
+
"streamingMode": "流式模式",
|
|
187
|
+
"draftChunkingJson": "草稿分块(JSON)",
|
|
188
|
+
"textChunkLimit": "文本分块上限",
|
|
189
|
+
"invalidJson": "JSON 格式无效",
|
|
190
|
+
"authBrand": "NextClaw UI",
|
|
191
|
+
"authLoginTitle": "管理员登录",
|
|
192
|
+
"authLoginDescription": "认证已开启。登录后才能查看这台机器的 NextClaw UI。",
|
|
193
|
+
"authUsername": "管理员用户名",
|
|
194
|
+
"authUsernamePlaceholder": "输入管理员用户名",
|
|
195
|
+
"authPassword": "管理员密码",
|
|
196
|
+
"authPasswordPlaceholder": "输入管理员密码",
|
|
197
|
+
"authConfirmPassword": "确认密码",
|
|
198
|
+
"authConfirmPasswordPlaceholder": "再次输入密码",
|
|
199
|
+
"authLoginAction": "登录",
|
|
200
|
+
"authLoggingIn": "登录中...",
|
|
201
|
+
"authLoggingOut": "退出中...",
|
|
202
|
+
"authActionFailed": "认证操作失败",
|
|
203
|
+
"authLoginSuccess": "登录成功",
|
|
204
|
+
"authLogoutSuccess": "已退出登录",
|
|
205
|
+
"authSetupSuccess": "认证已开启,当前标签页已自动登录,可直接继续使用",
|
|
206
|
+
"authPasswordUpdated": "管理员密码已更新",
|
|
207
|
+
"authEnabledSuccess": "认证已开启",
|
|
208
|
+
"authDisabledSuccess": "认证已关闭",
|
|
209
|
+
"authRetryStatus": "重试",
|
|
210
|
+
"authStatusLoadFailed": "无法获取认证状态,请检查 UI 服务是否正常。",
|
|
211
|
+
"authSecurityTitle": "Security",
|
|
212
|
+
"authSecurityDescription": "保持本机控制台默认简单;只有在你需要远程暴露时,再给 UI 加一层登录门。",
|
|
213
|
+
"authSetupTitle": "开启轻量认证",
|
|
214
|
+
"authSetupDescription": "首次开启时设置单个管理员账号。完成后当前标签页会自动登录。",
|
|
215
|
+
"authSetupAction": "开启认证",
|
|
216
|
+
"authSettingUp": "开启中...",
|
|
217
|
+
"authPasswordMismatch": "两次输入的密码不一致",
|
|
218
|
+
"authPasswordMinLengthHint": "密码至少 8 个字符。当前版本只支持单管理员账号。",
|
|
219
|
+
"authStatusLabel": "当前状态",
|
|
220
|
+
"authStatusConfiguredUser": "管理员账号:{username}",
|
|
221
|
+
"authUsernameFixedHelp": "首版不提供修改用户名和多用户管理;如需重新定义账号,请后续扩展这套边界。",
|
|
222
|
+
"authEnableLabel": "要求登录",
|
|
223
|
+
"authEnableOnHelp": "已开启后,除健康检查与认证接口外,其余 UI API 和 WebSocket 都需要登录。",
|
|
224
|
+
"authEnableOffHelp": "当前保持即开即用。重新打开后,这个标签页会自动拿到新的登录会话。",
|
|
225
|
+
"authPasswordSectionTitle": "修改管理员密码",
|
|
226
|
+
"authPasswordSectionDescription": "更新密码后,旧会话会立即失效;当前标签页会自动续成新会话(仅在认证开启时)。",
|
|
227
|
+
"authPasswordAction": "更新密码",
|
|
228
|
+
"authPasswordUpdating": "更新中...",
|
|
229
|
+
"authLogoutAction": "退出当前标签页",
|
|
230
|
+
"authSessionMemoryNotice": "当前版本的会话只保存在服务端内存里。NextClaw UI 进程重启后,需要重新登录。",
|
|
231
|
+
"dmScope": "私聊范围",
|
|
232
|
+
"dmScopeHelp": "控制私聊会话如何隔离。",
|
|
233
|
+
"defaultContextTokens": "默认上下文额度",
|
|
234
|
+
"defaultContextTokensHelp": "当智能体未设置单独值时使用该上下文预算。",
|
|
235
|
+
"runtimeCompanionEnabled": "桌宠 Companion",
|
|
236
|
+
"runtimeCompanionEnabledHelp": "开启后会自动拉起悬浮 Companion;关闭后会立即停止,并在下次启动时保持关闭。",
|
|
237
|
+
"defaultEngine": "默认运行时",
|
|
238
|
+
"defaultEngineHelp": "默认使用的智能体运行时,例如 native、codex 或 claude。",
|
|
239
|
+
"agentList": "智能体列表",
|
|
240
|
+
"agentListHelp": "在同一个网关进程中运行多个固定角色智能体。",
|
|
241
|
+
"bindings": "绑定规则",
|
|
242
|
+
"bindingsHelp": "根据渠道 + 账号 + 对端将入站消息路由到目标智能体。",
|
|
243
|
+
"agentIdRequiredError": "agents.list[{index}].id 必填",
|
|
244
|
+
"duplicateAgentId": "重复的智能体 ID",
|
|
245
|
+
"bindingAgentIdRequired": "bindings[{index}].agentId 必填",
|
|
246
|
+
"bindingAgentIdNotFound": "bindings[{index}].agentId 未在 agents.list/main 中找到",
|
|
247
|
+
"bindingChannelRequired": "bindings[{index}].match.channel 必填",
|
|
248
|
+
"bindingPeerIdRequired": "设置 peer.kind 时,bindings[{index}].match.peer.id 必填",
|
|
249
|
+
"agentIdPlaceholder": "智能体 ID(例如 engineer)",
|
|
250
|
+
"workspaceOverridePlaceholder": "工作空间覆盖(可选)",
|
|
251
|
+
"modelOverridePlaceholder": "模型覆盖(可选)",
|
|
252
|
+
"defaultEnginePlaceholder": "默认运行时(如 native 或 codex)",
|
|
253
|
+
"engineOverridePlaceholder": "运行时覆盖(可选)",
|
|
254
|
+
"contextTokensPlaceholder": "上下文额度",
|
|
255
|
+
"maxToolsPlaceholder": "最大工具次数",
|
|
256
|
+
"defaultAgent": "默认智能体",
|
|
257
|
+
"addAgent": "添加智能体",
|
|
258
|
+
"targetAgentIdPlaceholder": "目标智能体 ID",
|
|
259
|
+
"channelPlaceholder": "渠道(例如 discord)",
|
|
260
|
+
"accountIdOptionalPlaceholder": "账号 ID(可选)",
|
|
261
|
+
"peerKindOptional": "对端类型(可选)",
|
|
262
|
+
"peerIdPlaceholder": "对端 ID(需先设置对端类型)",
|
|
263
|
+
"addBinding": "添加绑定",
|
|
264
|
+
"saveRuntimeSettings": "保存运行时设置",
|
|
265
|
+
"secretsPageTitle": "密钥管理",
|
|
266
|
+
"secretsPageDescription": "集中管理 secrets.providers、secrets.defaults 与 secrets.refs。",
|
|
267
|
+
"secretsEnabledHelp": "关闭后不会解析 `{{secret:*}}` 引用。",
|
|
268
|
+
"defaultEnvProvider": "默认 Env 提供器",
|
|
269
|
+
"defaultFileProvider": "默认 File 提供器",
|
|
270
|
+
"defaultExecProvider": "默认 Exec 提供器",
|
|
271
|
+
"secretProvidersTitle": "Secret Providers",
|
|
272
|
+
"secretProvidersDescription": "定义可复用的 secrets provider(env/file/exec)。",
|
|
273
|
+
"providerAlias": "提供器别名",
|
|
274
|
+
"removeProvider": "移除提供器",
|
|
275
|
+
"envPrefix": "环境变量前缀",
|
|
276
|
+
"secretFilePath": "Secrets 文件路径",
|
|
277
|
+
"secretExecCommand": "执行命令",
|
|
278
|
+
"secretExecArgs": "命令参数(每行一个)",
|
|
279
|
+
"secretExecCwd": "执行目录(可选)",
|
|
280
|
+
"secretExecTimeoutMs": "超时(毫秒)",
|
|
281
|
+
"addSecretProvider": "添加 Provider",
|
|
282
|
+
"secretRefsTitle": "Secret Refs",
|
|
283
|
+
"secretRefsDescription": "把配置路径映射到 secret 引用(source/provider/id)。",
|
|
284
|
+
"secretConfigPath": "配置路径",
|
|
285
|
+
"secretId": "Secret ID",
|
|
286
|
+
"secretProviderAlias": "Provider 别名",
|
|
287
|
+
"addSecretRef": "添加 Ref",
|
|
288
|
+
"sessionsLoading": "加载会话中...",
|
|
289
|
+
"sessionsEmpty": "暂无会话。",
|
|
290
|
+
"sessionsLabelPlaceholder": "会话标签(可选)",
|
|
291
|
+
"sessionsRunStatusRunning": "运行中",
|
|
292
|
+
"sessionsRunStatusQueued": "排队中",
|
|
293
|
+
"actionConfigure": "配置",
|
|
294
|
+
"actionAddProvider": "添加提供商",
|
|
295
|
+
"actionEnable": "启用",
|
|
296
|
+
"configSaved": "配置已保存",
|
|
297
|
+
"configSavedApplying": "配置已保存,正在应用",
|
|
298
|
+
"configSavedApplied": "配置已保存并已应用",
|
|
299
|
+
"configSaveFailed": "保存配置失败",
|
|
300
|
+
"configReloaded": "配置已重载",
|
|
301
|
+
"configReloadFailed": "重载配置失败",
|
|
302
|
+
"channelConfigApplying": "渠道配置正在应用",
|
|
303
|
+
"channelConfigApplied": "渠道配置已应用",
|
|
304
|
+
"channelConfigApplyFailed": "渠道配置应用失败",
|
|
305
|
+
"feishuVerifySuccess": "验证成功,请到飞书开放平台完成事件订阅与发布后再开始使用。",
|
|
306
|
+
"feishuVerifyFailed": "验证失败",
|
|
307
|
+
"enterTag": "输入后按回车...",
|
|
308
|
+
"headerName": "Header 名称",
|
|
309
|
+
"headerValue": "Header 值"
|
|
310
|
+
}
|