@wu529778790/open-im 1.11.9-beta.0 → 1.11.9-beta.1

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.
@@ -1,461 +1,232 @@
1
1
  export declare const PAGE_TEXTS: {
2
- readonly en: {
3
- readonly pageTitle: "open-im local control";
4
- readonly heroBadge: "open-im local control";
5
- readonly heroTitle: "Local bridge control.";
6
- readonly heroBody: "";
7
- readonly heroBodyFull: "One local bridge for Telegram, Feishu, QQ, WeWork, DingTalk, WorkBuddy, and ClawBot.";
8
- readonly heroKicker: "Local AI bridge";
9
- readonly langButton: "中文";
10
- readonly darkModeToggle: "Toggle dark mode";
11
- readonly headerToolbarAria: "Bridge: validate, save, start, stop";
12
- readonly controlCenter: "Control center";
13
- readonly sidebarNoteTitle: "Local workflow";
14
- readonly sidebarNoteBody: "Configure at least one platform, save the config, then start the bridge from Service.";
15
- readonly mode: "Flow";
16
- readonly dashboardTitle: "Dashboard";
17
- readonly dashboardSubtitle: "Platform health status";
18
- readonly dashboardSubtitleFull: "Platform and service status";
19
- readonly quickActionsTitle: "Quick Actions";
20
- readonly refreshHealth: "Refresh Health Status";
21
- readonly viewConfig: "View Configuration";
22
- readonly overviewTitle: "Start here";
23
- readonly overviewBody: "Configure at least one platform, save the configuration, then start the bridge from the service section.";
24
- readonly openPlatforms: "Open Platforms";
25
- readonly openService: "Open Service";
26
- readonly healthChecking: "Checking...";
27
- readonly healthy: "Healthy";
28
- readonly unhealthy: "Issues Found";
29
- readonly notConfigured: "Not Configured";
30
- readonly disabled: "Disabled";
31
- readonly statConfiguredLabel: "Configured";
32
- readonly statConfiguredMeta: "Platforms with saved credentials";
33
- readonly statEnabledLabel: "Enabled";
34
- readonly statEnabledMeta: "Platforms selected for startup";
35
- readonly statServiceLabel: "Service";
36
- readonly serviceRunningShort: "Running";
37
- readonly serviceIdleShort: "Idle";
38
- readonly serviceRunningMeta: "Local bridge process is active";
39
- readonly serviceIdleMeta: "Bridge has not been started yet";
40
- readonly listSeparator: ", ";
41
- readonly platformsTitle: "Platforms";
42
- readonly navConfigFiles: "Config files";
43
- readonly configFilesTitle: "Config files (JSON)";
44
- readonly configFilesHint: "Edit the files on disk directly. Each card has its own Save. Platform / AI forms and Service → Save config still apply.";
45
- readonly openImConfigCardHint: "Full open-im configuration. Use Format, then Save. Invalid JSON is rejected.";
46
- readonly claudeSettingsCardHint: "Claude SDK environment (ANTHROPIC_API_KEY, ANTHROPIC_BASE_URL, ANTHROPIC_MODEL, etc.). Set API access here without shell exports.";
47
- readonly claudeJsonShortcutHint: "Edit ~/.claude/settings.json in the sidebar «Config files» section below.";
48
- readonly platformsHint: "Disabled platforms keep their saved values.";
49
- readonly enabled: "Enabled";
50
- readonly readyState: "Ready";
51
- readonly setupRequired: "Setup required";
52
- readonly credentialProgress: "{done}/{total} credentials";
53
- readonly telegramSummary: "Bot token and optional proxy.";
54
- readonly feishuSummary: "App ID, App Secret, and allowed user scope.";
55
- readonly qqSummary: "App ID and secret for QQ robot.";
56
- readonly weworkSummary: "Corp ID and secret for enterprise WeChat.";
57
- readonly dingtalkSummary: "Client credentials plus optional card template.";
58
- readonly workbuddySummary: "WeChat assistant via CodeBuddy OAuth.";
59
- readonly clawbotSummary: "WeChat customer service via ClawBot.";
60
- readonly clawbotApiUrl: "API URL";
61
- readonly clawbotApiToken: "API Token (Bearer)";
62
- readonly clawbotHelp: "Click \"Scan QR Login\" to authenticate via WeChat, or paste token manually.";
63
- readonly qrLoginBtn: "Scan QR Login";
64
- readonly qrLoginScanning: "Waiting for QR code scan...";
65
- readonly qrLoginSuccess: "Login successful! Credentials saved.";
66
- readonly qrLoginFailed: "Login failed";
67
- readonly qrLoginExpired: "QR code expired, please try again";
68
- readonly qrScanHint: "Use WeChat to scan the QR code";
69
- readonly configure: "Configure";
70
- readonly rebind: "Rebind";
71
- readonly platformBound: "Bound";
72
- readonly platformUnbound: "Not bound";
73
- readonly qrModalTitle: "Scan to Bind";
74
- readonly qrModalHint: "Scan the QR code below with WeChat to bind.";
75
- readonly qrModalGenerating: "Generating QR code...";
76
- readonly qrModalScanning: "Waiting for scan...";
77
- readonly qrModalSuccess: "Bound successfully";
78
- readonly qrModalExpired: "QR code expired";
79
- readonly qrModalRetry: "Scan again";
80
- readonly qrModalClose: "Close";
81
- readonly qrModalError: "Binding failed";
82
- readonly platformCredentialsTitle: "Credentials";
83
- readonly platformAccessTitle: "Routing and access";
84
- readonly platformTestNote: "Checks required credentials against the platform.";
85
- readonly platformAiTool: "AI tool override";
86
- readonly inheritDefaultAi: "Use default AI tool";
87
- readonly botToken: "Bot token";
88
- readonly proxy: "Proxy";
89
- readonly allowedUserIds: "Allowed user IDs";
90
- readonly telegramHelp: "Get credentials: visit <a href=\"https://t.me/BotFather\" target=\"_blank\">@BotFather</a>, send /newbot, then copy the Bot Token";
91
- readonly appId: "App ID";
92
- readonly appSecret: "App Secret";
93
- readonly feishuHelp: "Get credentials: visit <a href=\"https://open.feishu.cn/\" target=\"_blank\">Feishu Open Platform</a>, create an app, enable the bot, and copy the App ID / App Secret";
94
- readonly qqAppId: "App ID";
95
- readonly qqAppSecret: "App Secret";
96
- readonly qqHelp: "Get credentials: visit <a href=\"https://bot.q.qq.com\" target=\"_blank\">QQ Open Platform</a>, create a bot, and copy the App ID / App Secret";
97
- readonly corpId: "Corp ID / Bot ID";
98
- readonly weworkHelp: "Get credentials: visit <a href=\"https://work.weixin.qq.com/\" target=\"_blank\">WeWork Admin Console</a>, create an app, and copy the Bot ID (Corp ID) / Secret";
99
- readonly clientId: "Client ID / AppKey";
100
- readonly clientSecret: "Client Secret / AppSecret";
101
- readonly dingtalkHelp: "Get credentials: Create an enterprise internal app on <a href=\"https://open-dev.dingtalk.com/\" target=\"_blank\">DingTalk Open Platform</a>, enable Stream Mode, and get Client ID / Client Secret";
102
- readonly workbuddyHelp: "Get credentials: Login via CodeBuddy OAuth to get access/refresh tokens. Connects WeChat assistant through Centrifuge WebSocket.";
103
- readonly secret: "Secret";
104
- readonly cardTemplateId: "Card template ID";
105
- readonly workbuddyAccessToken: "Access Token";
106
- readonly workbuddyRefreshToken: "Refresh Token";
107
- readonly workbuddyUserId: "User ID";
108
- readonly workbuddyBaseUrl: "Base URL";
109
- readonly optional: "Optional";
110
- readonly commaSeparatedIds: "Comma-separated IDs";
111
- readonly aiTitle: "AI Tooling";
112
- readonly aiHint: "Claude SDK keys: sidebar Config files → ~/.claude/settings.json. Set which AI each platform uses under Platforms above. Codex / CodeBuddy need a CLI path in the panels below when any platform uses them.";
113
- readonly aiPerPlatformHint: "Which AI to use is configured per platform in the Platforms section (default: claude). This section sets shared paths, proxy, and logs.";
114
- readonly claudeNote: "Claude credentials are still read from environment variables or ~/.claude/settings.json. This page manages local bridge config, not Claude account auth.";
115
- readonly aiCommonTitle: "Shared defaults";
116
- readonly aiCommonHint: "Choose the default AI tool first. Tool-specific fields are shown below.";
117
- readonly aiToolConfigTitle: "Tool-specific settings";
118
- readonly aiToolConfigHint: "Only the selected tool's fields are shown.";
119
- readonly aiConfigSummary: "Editing {tool} settings. Switch tools above if you need to configure another runtime.";
120
- readonly aiTool: "Default AI tool";
121
- readonly workDir: "Default work directory";
122
- readonly claudeCli: "Claude CLI path";
123
- readonly codexCli: "Codex CLI path";
124
- readonly codebuddyCli: "CodeBuddy CLI path";
125
- readonly opencodeSdkInfo: "OpenCode uses the built-in SDK integration. No CLI path needed.";
126
- readonly codexProxy: "Codex proxy";
127
- readonly codexApiKey: "OPENAI_API_KEY";
128
- readonly codexApiKeyTip: "Set the OpenAI API key used by Codex. You can also edit the auth file below.";
129
- readonly claudeConfigPath: "Config file location";
130
- readonly claudeAuthToken: "ANTHROPIC_AUTH_TOKEN";
131
- readonly claudeBaseUrl: "ANTHROPIC_BASE_URL";
132
- readonly claudeModel: "ANTHROPIC_MODEL";
133
- readonly claudeSkipPermissions: "Skip Claude permission prompts";
134
- readonly claudeSkipPermissionsTip: "Off by default. Claude SDK will ask for permission in its native flow; open-im just forwards the conversation. Turn this on only if you want bypassPermissions-style automation.";
135
- readonly claudeProxy: "Proxy (optional)";
136
- readonly hookPort: "Hook port";
137
- readonly logLevel: "Log level";
138
- readonly logLevelDefault: "default (app default)";
139
- readonly validate: "Validate";
140
- readonly test: "Check config";
141
- readonly testing: "Checking...";
142
- readonly testSuccess: "Configuration looks valid.";
143
- readonly testFailed: "Configuration issue: {error}";
144
- readonly save: "Save config";
145
- readonly start: "Start bridge";
146
- readonly stop: "Stop bridge";
147
- readonly bridgeRunning: "Bridge running (pid {pid})";
148
- readonly bridgeStopped: "Bridge stopped";
149
- readonly bridgeActive: "Bridge worker is active.";
150
- readonly bridgeInactive: "Bridge worker is currently stopped.";
151
- readonly summaryEnabled: "Enabled platforms: {platforms} | AI tool: {tool}";
152
- readonly summaryEmpty: "No platform enabled yet | AI tool: {tool}";
153
- readonly ready: "Control surface ready.";
154
- readonly validationOk: "Configuration looks internally consistent.";
155
- readonly saveOk: "Configuration saved.";
156
- readonly startOk: "Bridge started.";
157
- readonly stopOk: "Bridge stopped.";
158
- readonly configEditorTitle: "Config Editor";
159
- readonly configEditorHint: "Edit ~/.open-im/config.json directly";
160
- readonly claudeSettingsLabel: "~/.claude/settings.json";
161
- readonly codexSettingsLabel: "~/.codex/auth.json";
162
- readonly codexSettingsCardHint: "Codex CLI auth (OPENAI_API_KEY etc.). Set API access here, or use the OPENAI_API_KEY field in the Codex tool tab.";
163
- readonly configJson: "~/.open-im/config.json";
164
- readonly formatJson: "Format";
165
- readonly resetJson: "Reset";
166
- readonly saveBtn: "Save";
167
- readonly jsonValid: "Valid JSON";
168
- readonly jsonInvalid: "Invalid JSON: {error}";
169
- readonly validationNoPlatformEnabled: "Enable at least one IM platform and fill its required credentials before saving.";
170
- readonly validationPlatformIncomplete: "Platform \"{platform}\" is enabled but these required fields are empty: {fields}";
171
- readonly validationAiCodexNoCli: "Default AI is Codex but Codex CLI path is empty. Set it under AI Tooling or change the default tool.";
172
- readonly validationAiCodebuddyNoCli: "Default AI is CodeBuddy but CodeBuddy CLI path is empty. Set it under AI Tooling or change the default tool.";
173
- readonly tipTelegramToken: "From Telegram, open <a href=\"https://t.me/BotFather\" target=\"_blank\" rel=\"noopener\">@BotFather</a> /newbot copy the token.";
174
- readonly tipFeishuAppId: "Feishu Open Platform your app Credentials → App ID.";
175
- readonly tipFeishuSecret: "Same page → App Secret (click show / reset if needed).";
176
- readonly tipQqAppId: "<a href=\"https://bot.q.qq.com\" target=\"_blank\" rel=\"noopener\">QQ bot console</a> → your bot → App ID.";
177
- readonly tipQqSecret: "Same console → App Secret.";
178
- readonly tipWeworkCorp: "WeCom admin appview Corp ID (or smart-bot Bot ID) and Secret.";
179
- readonly tipDingtalkClient: "<a href=\"https://open-dev.dingtalk.com\" target=\"_blank\" rel=\"noopener\">DingTalk Open Platform</a> → internal app App Key & App Secret.";
180
- readonly tipWorkbuddyToken: "Go to Settings → AI Tooling or use the Setup Wizard to configure WorkBuddy OAuth. You can also paste tokens from CodeBuddy login.";
181
- readonly tipClawbotApiToken: "Use the \"Scan QR Login\" button in the platform card, or paste token from ClawBot iLink login.";
182
- readonly navSetupWizard: "Setup Wizard";
183
- readonly wizardStepLabel_welcome: "Welcome";
184
- readonly wizardStepLabel_ai: "AI Backend";
185
- readonly wizardStepLabel_platforms: "Platforms";
186
- readonly wizardStepLabel_credentials: "Credentials";
187
- readonly wizardStepLabel_review: "Review";
188
- readonly wizardWelcomeTitle: "Welcome to open-im";
189
- readonly wizardWelcomeDesc: "This wizard will guide you through configuring your AI coding assistant bridge. It takes about 2 minutes.";
190
- readonly wizardStepAi: "Choose your AI backend and working directory";
191
- readonly wizardStepPlatforms: "Pick which chat platforms to connect";
192
- readonly wizardStepCredentials: "Enter API keys and tokens";
193
- readonly wizardStepReview: "Review your choices, then save and start";
194
- readonly wizardAiTitle: "AI Backend";
195
- readonly wizardAiDesc: "open-im bridges chat apps to AI coding tools. Set up the paths below — the platform-level AI selection comes in the next step.";
196
- readonly wizardWorkDirHint: "The directory where the AI tool will work. Leave empty to use the bridge's process directory.";
197
- readonly wizardPlatformsTitle: "Choose Platforms";
198
- readonly wizardPlatformsDesc: "Select at least one chat platform to connect. You can enable more later from the Dashboard.";
199
- readonly wizardPickAtLeastOne: "Please select at least one platform.";
200
- readonly wizardCredentialsTitle: "Enter Credentials";
201
- readonly wizardCredentialsDesc: "Fill in the required credentials for each enabled platform.";
202
- readonly wizardReviewTitle: "Review & Start";
203
- readonly wizardReviewDesc: "Check your configuration below. When you're ready, click Save & Start to apply everything and launch the bridge.";
204
- readonly wizardDoneTitle: "You're all set!";
205
- readonly wizardDoneDesc: "The bridge is running. You can now message your bot on any enabled platform.";
206
- readonly wizardGoToDashboard: "Go to Dashboard";
207
- readonly wizardBack: "Back";
208
- readonly wizardNext: "Next";
209
- readonly wizardFinish: "Save & Start";
210
- readonly wizardWorking: "Working...";
211
- readonly wizardSaving: "Saving configuration...";
212
- readonly wizardStarting: "Starting bridge...";
213
- readonly wizardStepLabel_claudeApi: "Claude API";
214
- readonly wizardStepClaudeApi: "Set up your Claude API access";
215
- readonly wizardClaudeApiTitle: "Claude API Setup";
216
- readonly wizardClaudeApiDesc: "Choose how to authenticate with Claude. This is required for the AI assistant to work.";
217
- readonly wizardApiTypeLabel: "API Type";
218
- readonly wizardApiOfficial: "Official Anthropic API";
219
- readonly wizardApiOfficialDesc: "Use your Anthropic API key or auth token";
220
- readonly wizardApiThirdparty: "Third-party Model";
221
- readonly wizardApiThirdpartyDesc: "Use a compatible third-party API endpoint";
222
- readonly wizardApiSkip: "Already configured";
223
- readonly wizardApiSkipDesc: "Skip if you've already set up API access";
224
- readonly wizardAuthTypeLabel: "Authentication";
225
- readonly wizardAuthApiKey: "API Key";
226
- readonly wizardAuthToken: "Auth Token";
227
- readonly wizardLoading: "Loading...";
228
- readonly aiCommandPickerTitle: "🤖 AI Tool";
229
- readonly aiCommandPickerHint: "Messages from this channel will be replied by the AI selected above";
230
- readonly platformStatusOn: "Connected";
231
- readonly platformStatusOff: "Not connected";
232
- };
233
- readonly zh: {
234
- readonly pageTitle: "open-im 本地控制台";
235
- readonly heroBadge: "open-im";
236
- readonly heroTitle: "本地桥接控制台";
237
- readonly heroBody: "";
238
- readonly heroBodyFull: "一个本地桥接入口,统一连接 Telegram、Feishu、QQ、WeWork、DingTalk、WorkBuddy 和 ClawBot。";
239
- readonly heroKicker: "本地 AI 桥接";
240
- readonly langButton: "EN";
241
- readonly darkModeToggle: "切换暗黑模式";
242
- readonly headerToolbarAria: "桥接:校验、保存、启动、停止";
243
- readonly controlCenter: "控制中心";
244
- readonly sidebarNoteTitle: "本地工作流";
245
- readonly sidebarNoteBody: "至少配置一个平台,保存配置,然后在服务控制区启动桥接。";
246
- readonly mode: "模式";
247
- readonly dashboardTitle: "概览";
248
- readonly dashboardSubtitle: "平台健康状态";
249
- readonly dashboardSubtitleFull: "平台与服务状态";
250
- readonly quickActionsTitle: "快捷操作";
251
- readonly refreshHealth: "刷新健康状态";
252
- readonly viewConfig: "查看配置";
253
- readonly overviewTitle: "先完成基础配置";
254
- readonly overviewBody: "先配置至少一个平台,保存本地配置,再到服务控制区启动桥接。";
255
- readonly openPlatforms: "打开平台配置";
256
- readonly openService: "打开服务控制";
257
- readonly healthChecking: "检查中...";
258
- readonly healthy: "正常";
259
- readonly unhealthy: "有问题";
260
- readonly notConfigured: "未配置";
261
- readonly disabled: "已禁用";
262
- readonly statConfiguredLabel: "已配置";
263
- readonly statConfiguredMeta: "已填写凭证的平台数量";
264
- readonly statEnabledLabel: "已启用";
265
- readonly statEnabledMeta: "会随服务启动的平台数量";
266
- readonly statServiceLabel: "服务";
267
- readonly serviceRunningShort: "运行中";
268
- readonly serviceIdleShort: "未启动";
269
- readonly serviceRunningMeta: "本地桥接进程正在运行";
270
- readonly serviceIdleMeta: "桥接服务尚未启动";
271
- readonly listSeparator: "、";
272
- readonly platformsTitle: "平台配置";
273
- readonly navConfigFiles: "配置文件";
274
- readonly configFilesTitle: "配置文件(JSON)";
275
- readonly configFilesHint: "直接编辑磁盘上的文件,每张卡片有独立保存按钮。平台 / AI 表单与服务区的「保存配置」仍然有效。";
276
- readonly openImConfigCardHint: "open-im 完整配置。先格式化再保存;JSON 不合法时无法写入。";
277
- readonly claudeSettingsCardHint: "Claude SDK 环境变量(ANTHROPIC_API_KEY、ANTHROPIC_BASE_URL、ANTHROPIC_MODEL 等)。在此配置 API,无需在终端 export。";
278
- readonly claudeJsonShortcutHint: "提示:请在左侧栏「配置文件」分区编辑 ~/.claude/settings.json。";
279
- readonly platformsHint: "禁用的平台仍保留已保存的值。";
280
- readonly enabled: "启用";
281
- readonly readyState: "已就绪";
282
- readonly setupRequired: "需要完成配置";
283
- readonly credentialProgress: "凭证 {done}/{total}";
284
- readonly telegramSummary: "Bot Token 与可选代理。";
285
- readonly feishuSummary: "App ID、App Secret 以及可访问用户范围。";
286
- readonly qqSummary: "QQ 机器人 App ID 与 Secret。";
287
- readonly weworkSummary: "企业微信 Corp ID 与 Secret。";
288
- readonly dingtalkSummary: "钉钉 Client 凭证,可选配置卡片模板 ID。";
289
- readonly workbuddySummary: "通过 CodeBuddy OAuth 连接微信助理。";
290
- readonly clawbotSummary: "通过 ClawBot 连接微信客服号。";
291
- readonly clawbotApiUrl: "API 地址";
292
- readonly clawbotApiToken: "API Token (Bearer)";
293
- readonly clawbotHelp: "点击“扫码登录”通过微信认证,或手动粘贴 Token。";
294
- readonly qrLoginBtn: "扫码登录";
295
- readonly qrLoginScanning: "等待扫码...";
296
- readonly qrLoginSuccess: "登录成功!凭证已保存。";
297
- readonly qrLoginFailed: "登录失败";
298
- readonly qrLoginExpired: "二维码已过期,请重试";
299
- readonly qrScanHint: "请使用微信扫描二维码";
300
- readonly configure: "配置";
301
- readonly rebind: "重新绑定";
302
- readonly platformBound: "已绑定";
303
- readonly platformUnbound: "未绑定";
304
- readonly qrModalTitle: "扫码绑定";
305
- readonly qrModalHint: "请用微信扫描下方二维码完成绑定";
306
- readonly qrModalGenerating: "正在生成二维码...";
307
- readonly qrModalScanning: "等待扫码...";
308
- readonly qrModalSuccess: "绑定成功";
309
- readonly qrModalExpired: "二维码已过期";
310
- readonly qrModalRetry: "重新扫码";
311
- readonly qrModalClose: "关闭";
312
- readonly qrModalError: "绑定失败";
313
- readonly platformCredentialsTitle: "凭证";
314
- readonly platformAccessTitle: "路由与访问";
315
- readonly platformTestNote: "只会检查该平台的必填凭证是否可用。";
316
- readonly platformAiTool: "平台 AI 工具覆盖";
317
- readonly inheritDefaultAi: "使用默认 AI 工具";
318
- readonly botToken: "Bot Token";
319
- readonly proxy: "代理";
320
- readonly allowedUserIds: "允许的用户 ID";
321
- readonly telegramHelp: "获取凭证:访问 <a href=\"https://t.me/BotFather\" target=\"_blank\">@BotFather</a>,发送 /newbot 创建机器人并拿到 Bot Token";
322
- readonly appId: "App ID";
323
- readonly appSecret: "App Secret";
324
- readonly feishuHelp: "获取凭证:访问 <a href=\"https://open.feishu.cn/\" target=\"_blank\">飞书开放平台</a>,创建应用、启用机器人并拿到 App ID / App Secret";
325
- readonly qqAppId: "App ID";
326
- readonly qqAppSecret: "App Secret";
327
- readonly qqHelp: "获取凭证:访问 <a href=\"https://bot.q.qq.com\" target=\"_blank\">QQ 开放平台</a>,创建机器人并拿到 App ID / App Secret";
328
- readonly corpId: "Corp ID / Bot ID";
329
- readonly weworkHelp: "获取凭证:访问 <a href=\"https://work.weixin.qq.com/\" target=\"_blank\">企业微信管理后台</a>,创建应用并拿到 Bot ID(Corp ID)/ Secret";
330
- readonly clientId: "Client ID / AppKey";
331
- readonly clientSecret: "Client Secret / AppSecret";
332
- readonly dingtalkHelp: "获取凭证:在 <a href=\"https://open-dev.dingtalk.com/\" target=\"_blank\">钉钉开放平台</a> 创建企业内部应用,启用 Stream Mode,并拿到 Client ID / Client Secret";
333
- readonly workbuddyHelp: "获取凭证:通过 CodeBuddy OAuth 登录获取 access/refresh token。WorkBuddy 通过 Centrifuge WebSocket 连接微信客服。";
334
- readonly cardTemplateId: "卡片模板 ID";
335
- readonly workbuddyAccessToken: "Access Token";
336
- readonly workbuddyRefreshToken: "Refresh Token";
337
- readonly workbuddyUserId: "User ID";
338
- readonly workbuddyBaseUrl: "基础 URL";
339
- readonly optional: "可选";
340
- readonly commaSeparatedIds: "多个 ID 用逗号分隔";
341
- readonly aiTitle: "AI 工具配置";
342
- readonly aiHint: "Claude SDK:左侧栏「配置文件」→ ~/.claude/settings.json。各渠道用哪个 AI 在上方「平台」里分别设置。若任一平台选 Codex/CodeBuddy,再在下方填对应 CLI 路径。";
343
- readonly aiPerPlatformHint: "每个平台的 AI 工具在上方「平台」中配置(默认 claude)。本区域设置共用路径、代理与日志。";
344
- readonly claudeNote: "Claude 凭证仍然从环境变量或 ~/.claude/settings.json 读取。这个页面只管理本地桥接配置,不负责 Claude 账号登录。";
345
- readonly aiCommonTitle: "公共默认配置";
346
- readonly aiCommonHint: "先选择默认 AI 工具,下方再显示对应的工具专属配置。";
347
- readonly aiToolConfigTitle: "工具专属配置";
348
- readonly aiToolConfigHint: "只显示当前选中 AI 工具的字段。";
349
- readonly aiConfigSummary: "正在编辑 {tool} 的配置,如需配置其他工具,可在上方切换。";
350
- readonly aiTool: "默认 AI 工具";
351
- readonly workDir: "默认工作目录";
352
- readonly claudeCli: "Claude CLI 路径";
353
- readonly codexCli: "Codex CLI 路径";
354
- readonly codebuddyCli: "CodeBuddy CLI 路径";
355
- readonly opencodeSdkInfo: "OpenCode 使用 SDK 集成,无需配置 CLI 路径。";
356
- readonly codexProxy: "Codex 代理";
357
- readonly codexApiKey: "OPENAI_API_KEY";
358
- readonly codexApiKeyTip: "设置 Codex 使用的 OpenAI API Key。也可以在下方编辑 auth 文件。";
359
- readonly claudeConfigPath: "配置文件位置";
360
- readonly claudeSkipPermissions: "跳过 Claude 权限确认";
361
- readonly claudeSkipPermissionsTip: "默认关闭。Claude SDK 会按自己的原生流程请求权限,open-im 只负责转发对话。只有你想要 bypassPermissions 式自动执行时才打开。";
362
- readonly claudeProxy: "代理(可选)";
363
- readonly hookPort: "Hook 端口";
364
- readonly logLevel: "日志级别";
365
- readonly logLevelDefault: "default(程序默认)";
366
- readonly validate: "校验配置";
367
- readonly test: "校验配置";
368
- readonly testing: "校验中...";
369
- readonly testSuccess: "配置校验通过。";
370
- readonly testFailed: "配置有问题:{error}";
371
- readonly save: "保存配置";
372
- readonly start: "启动桥接";
373
- readonly stop: "停止桥接";
374
- readonly bridgeRunning: "桥接运行中(pid {pid})";
375
- readonly bridgeStopped: "桥接已停止";
376
- readonly bridgeActive: "桥接 worker 正在运行。";
377
- readonly bridgeInactive: "桥接 worker 当前已停止。";
378
- readonly summaryEnabled: "已启用平台:{platforms} | AI 工具:{tool}";
379
- readonly summaryEmpty: "暂未启用平台 | AI 工具:{tool}";
380
- readonly ready: "控制台已就绪。";
381
- readonly validationOk: "配置校验通过。";
382
- readonly saveOk: "配置已保存。";
383
- readonly startOk: "桥接已启动。";
384
- readonly stopOk: "桥接已停止。";
385
- readonly configEditorTitle: "JSON 配置编辑器";
386
- readonly configEditorHint: "直接编辑 ~/.open-im/config.json";
387
- readonly claudeSettingsLabel: "~/.claude/settings.json";
388
- readonly codexSettingsLabel: "~/.codex/auth.json";
389
- readonly codexSettingsCardHint: "Codex CLI 认证信息(OPENAI_API_KEY 等)。在此配置 API 访问,或在 Codex 工具标签页填写 OPENAI_API_KEY。";
390
- readonly configJson: "~/.open-im/config.json";
391
- readonly configJsonHint: "编辑配置 JSON。点击服务区的“保存配置”按钮后侘存更改。";
392
- readonly formatJson: "格式化";
393
- readonly resetJson: "重置";
394
- readonly saveBtn: "保存";
395
- readonly jsonValid: "JSON 有效";
396
- readonly jsonInvalid: "JSON 无效:{error}";
397
- readonly validationNoPlatformEnabled: "保存前请至少启用一个 IM 平台,并填完必填凭证。";
398
- readonly validationPlatformIncomplete: "平台「{platform}」已启用,但以下必填项为空:{fields}";
399
- readonly validationAiCodexNoCli: "默认 AI 为 Codex,但 Codex CLI 路径为空。请在 AI 区填写,或改默认工具。";
400
- readonly validationAiCodebuddyNoCli: "默认 AI 为 CodeBuddy,但 CodeBuddy CLI 路径为空。请在 AI 区填写,或改默认工具。";
401
- readonly tipTelegramToken: "在 Telegram 搜 <a href=\"https://t.me/BotFather\" target=\"_blank\" rel=\"noopener\">@BotFather</a>,发 /newbot 创建机器人后复制 Token。";
402
- readonly tipFeishuAppId: "飞书开放平台 → 应用 → 凭证与基础信息 → App ID。";
403
- readonly tipFeishuSecret: "同一页 App Secret(可重置后查看)。";
404
- readonly tipQqAppId: "<a href=\"https://bot.q.qq.com\" target=\"_blank\" rel=\"noopener\">QQ 开放平台</a> → 机器人 → App ID。";
405
- readonly tipQqSecret: "同一处获取 App Secret。";
406
- readonly tipWeworkCorp: "企业微信管理后台 → 应用 → 查省 Corp ID / 智能机器人 Bot ID 与 Secret。";
407
- readonly tipDingtalkClient: "<a href=\"https://open-dev.dingtalk.com\" target=\"_blank\" rel=\"noopener\">钉钉开放平台</a> → 企业内部应用 → AppKey / AppSecret。";
408
- readonly tipWorkbuddyToken: "前往“AI 工具配置”或使用设置向导配置 WorkBuddy OAuth;或粘贴 CodeBuddy 登录后的 Token。";
409
- readonly tipClawbotApiToken: "使用平台卡片中的“扫码登录”按钮,或从 ClawBot iLink 登录后复制 Token。";
410
- readonly navSetupWizard: "设置向导";
411
- readonly wizardStepLabel_welcome: "欢迎";
412
- readonly wizardStepLabel_ai: "AI 后端";
413
- readonly wizardStepLabel_platforms: "平台";
414
- readonly wizardStepLabel_credentials: "凭证";
415
- readonly wizardStepLabel_review: "确认";
416
- readonly wizardWelcomeTitle: "欢迎使用 open-im";
417
- readonly wizardWelcomeDesc: "这个向导将引导你配置 AI 编程助手桥接。大约需要 2 分钟。";
418
- readonly wizardStepAi: "选择 AI 后端和工作目录";
419
- readonly wizardStepPlatforms: "选择要连接的聊天平台";
420
- readonly wizardStepCredentials: "输入 API Key 和 Token";
421
- readonly wizardStepReview: "检查配置,然后保存启动";
422
- readonly wizardAiTitle: "AI 后端";
423
- readonly wizardAiDesc: "open-im 将聊天 App 桥接到 AI 编程工具。在下方设置路径,平台级的 AI 选择在下一步。";
424
- readonly wizardWorkDirHint: "AI 工具的工作目录。留空则使用桥接进程的工作目录。";
425
- readonly wizardPlatformsTitle: "选择平台";
426
- readonly wizardPlatformsDesc: "至少选择一个聊天平台。后续可在概览页启用更多。";
427
- readonly wizardPickAtLeastOne: "请至少选择一个平台。";
428
- readonly wizardCredentialsTitle: "输入凭证";
429
- readonly wizardCredentialsDesc: "为每个已启用的平台填写必要的凭证信息。";
430
- readonly wizardReviewTitle: "确认并启动";
431
- readonly wizardReviewDesc: "检查下方配置。准备好后点击“保存并启动”应用配置并启动桥接。";
432
- readonly wizardDoneTitle: "配置完成!";
433
- readonly wizardDoneDesc: "桥接已运行。你现在可以在任何已启用的平台上向机器人发消息了。";
434
- readonly wizardGoToDashboard: "进入概览";
435
- readonly wizardBack: "上一步";
436
- readonly wizardNext: "下一步";
437
- readonly wizardFinish: "保存并启动";
438
- readonly wizardWorking: "处理中...";
439
- readonly wizardSaving: "正在保存配置...";
440
- readonly wizardStarting: "正在启动桥接...";
441
- readonly wizardStepLabel_claudeApi: "Claude API";
442
- readonly wizardStepClaudeApi: "配置 Claude API 访问";
443
- readonly wizardClaudeApiTitle: "Claude API 配置";
444
- readonly wizardClaudeApiDesc: "选择 Claude 的认证方式,这是 AI 助手工作的必要配置。";
445
- readonly wizardApiTypeLabel: "API 类型";
446
- readonly wizardApiOfficial: "官方 Anthropic API";
447
- readonly wizardApiOfficialDesc: "使用 Anthropic API Key 或 Auth Token";
448
- readonly wizardApiThirdparty: "第三方模型";
449
- readonly wizardApiThirdpartyDesc: "使用兼容的第三方 API 端点";
450
- readonly wizardApiSkip: "已配置";
451
- readonly wizardApiSkipDesc: "如果已配置 API 访问,可跳过此步";
452
- readonly wizardAuthTypeLabel: "认证方式";
453
- readonly wizardAuthApiKey: "API Key";
454
- readonly wizardAuthToken: "Auth Token";
455
- readonly wizardLoading: "加载中...";
456
- readonly aiCommandPickerTitle: "🤖 AI 工具";
457
- readonly aiCommandPickerHint: "这个渠道收到的消息会用上面的 AI 回复";
458
- readonly platformStatusOn: "已连接";
459
- readonly platformStatusOff: "未连接";
460
- };
2
+ readonly pageTitle: "open-im 本地控制台";
3
+ readonly heroBadge: "open-im";
4
+ readonly heroTitle: "本地桥接控制台";
5
+ readonly heroBody: "";
6
+ readonly heroBodyFull: "一个本地桥接入口,统一连接 Telegram、Feishu、QQ、WeWork、DingTalk、WorkBuddy 和 ClawBot。";
7
+ readonly heroKicker: "本地 AI 桥接";
8
+ readonly langButton: "EN";
9
+ readonly darkModeToggle: "切换暗黑模式";
10
+ readonly headerToolbarAria: "桥接:校验、保存、启动、停止";
11
+ readonly controlCenter: "控制中心";
12
+ readonly sidebarNoteTitle: "本地工作流";
13
+ readonly sidebarNoteBody: "至少配置一个平台,保存配置,然后在服务控制区启动桥接。";
14
+ readonly mode: "模式";
15
+ readonly dashboardTitle: "概览";
16
+ readonly dashboardSubtitle: "平台健康状态";
17
+ readonly dashboardSubtitleFull: "平台与服务状态";
18
+ readonly quickActionsTitle: "快捷操作";
19
+ readonly refreshHealth: "刷新健康状态";
20
+ readonly viewConfig: "查看配置";
21
+ readonly overviewTitle: "先完成基础配置";
22
+ readonly overviewBody: "先配置至少一个平台,保存本地配置,再到服务控制区启动桥接。";
23
+ readonly openPlatforms: "打开平台配置";
24
+ readonly openService: "打开服务控制";
25
+ readonly healthChecking: "检查中...";
26
+ readonly healthy: "正常";
27
+ readonly unhealthy: "有问题";
28
+ readonly notConfigured: "未配置";
29
+ readonly disabled: "已禁用";
30
+ readonly statConfiguredLabel: "已配置";
31
+ readonly statConfiguredMeta: "已填写凭证的平台数量";
32
+ readonly statEnabledLabel: "已启用";
33
+ readonly statEnabledMeta: "会随服务启动的平台数量";
34
+ readonly statServiceLabel: "服务";
35
+ readonly serviceRunningShort: "运行中";
36
+ readonly serviceIdleShort: "未启动";
37
+ readonly serviceRunningMeta: "本地桥接进程正在运行";
38
+ readonly serviceIdleMeta: "桥接服务尚未启动";
39
+ readonly listSeparator: "";
40
+ readonly platformsTitle: "平台配置";
41
+ readonly navConfigFiles: "配置文件";
42
+ readonly configFilesTitle: "配置文件(JSON)";
43
+ readonly configFilesHint: "直接编辑磁盘上的文件,每张卡片有独立保存按钮。平台 / AI 表单与服务区的「保存配置」仍然有效。";
44
+ readonly openImConfigCardHint: "open-im 完整配置。先格式化再保存;JSON 不合法时无法写入。";
45
+ readonly claudeSettingsCardHint: "Claude SDK 环境变量(ANTHROPIC_API_KEY、ANTHROPIC_BASE_URL、ANTHROPIC_MODEL 等)。在此配置 API,无需在终端 export。";
46
+ readonly claudeJsonShortcutHint: "提示:请在左侧栏「配置文件」分区编辑 ~/.claude/settings.json。";
47
+ readonly platformsHint: "禁用的平台仍保留已保存的值。";
48
+ readonly enabled: "启用";
49
+ readonly readyState: "已就绪";
50
+ readonly setupRequired: "需要完成配置";
51
+ readonly credentialProgress: "凭证 {done}/{total}";
52
+ readonly telegramSummary: "Bot Token 与可选代理。";
53
+ readonly feishuSummary: "App ID、App Secret 以及可访问用户范围。";
54
+ readonly qqSummary: "QQ 机器人 App ID Secret";
55
+ readonly weworkSummary: "企业微信 Corp ID Secret。";
56
+ readonly dingtalkSummary: "钉钉 Client 凭证,可选配置卡片模板 ID。";
57
+ readonly workbuddySummary: "通过 CodeBuddy OAuth 连接微信助理。";
58
+ readonly clawbotSummary: "通过 ClawBot 连接微信客服号。";
59
+ readonly clawbotApiUrl: "API 地址";
60
+ readonly clawbotApiToken: "API Token (Bearer)";
61
+ readonly clawbotHelp: "点击“扫码登录”通过微信认证,或手动粘贴 Token";
62
+ readonly qrLoginBtn: "扫码登录";
63
+ readonly qrLoginScanning: "等待扫码...";
64
+ readonly qrLoginSuccess: "登录成功!凭证已保存。";
65
+ readonly qrLoginFailed: "登录失败";
66
+ readonly qrLoginExpired: "二维码已过期,请重试";
67
+ readonly qrScanHint: "请使用微信扫描二维码";
68
+ readonly configure: "配置";
69
+ readonly rebind: "重新绑定";
70
+ readonly platformBound: "已绑定";
71
+ readonly platformUnbound: "未绑定";
72
+ readonly qrModalTitle: "扫码绑定";
73
+ readonly qrModalHint: "请用微信扫描下方二维码完成绑定";
74
+ readonly qrModalGenerating: "正在生成二维码...";
75
+ readonly qrModalScanning: "等待扫码...";
76
+ readonly qrModalSuccess: "绑定成功";
77
+ readonly qrModalExpired: "二维码已过期";
78
+ readonly qrModalRetry: "重新扫码";
79
+ readonly qrModalClose: "关闭";
80
+ readonly qrModalError: "绑定失败";
81
+ readonly platformCredentialsTitle: "凭证";
82
+ readonly platformAccessTitle: "路由与访问";
83
+ readonly platformTestNote: "只会检查该平台的必填凭证是否可用。";
84
+ readonly platformAiTool: "平台 AI 工具覆盖";
85
+ readonly inheritDefaultAi: "使用默认 AI 工具";
86
+ readonly botToken: "Bot Token";
87
+ readonly proxy: "代理";
88
+ readonly allowedUserIds: "允许的用户 ID";
89
+ readonly telegramHelp: "获取凭证:访问 <a href=\"https://t.me/BotFather\" target=\"_blank\">@BotFather</a>,发送 /newbot 创建机器人并拿到 Bot Token";
90
+ readonly appId: "App ID";
91
+ readonly appSecret: "App Secret";
92
+ readonly feishuHelp: "获取凭证:访问 <a href=\"https://open.feishu.cn/\" target=\"_blank\">飞书开放平台</a>,创建应用、启用机器人并拿到 App ID / App Secret";
93
+ readonly qqAppId: "App ID";
94
+ readonly qqAppSecret: "App Secret";
95
+ readonly qqHelp: "获取凭证:访问 <a href=\"https://bot.q.qq.com\" target=\"_blank\">QQ 开放平台</a>,创建机器人并拿到 App ID / App Secret";
96
+ readonly corpId: "Corp ID / Bot ID";
97
+ readonly weworkHelp: "获取凭证:访问 <a href=\"https://work.weixin.qq.com/\" target=\"_blank\">企业微信管理后台</a>,创建应用并拿到 Bot ID(Corp ID)/ Secret";
98
+ readonly clientId: "Client ID / AppKey";
99
+ readonly clientSecret: "Client Secret / AppSecret";
100
+ readonly dingtalkHelp: "获取凭证:在 <a href=\"https://open-dev.dingtalk.com/\" target=\"_blank\">钉钉开放平台</a> 创建企业内部应用,启用 Stream Mode,并拿到 Client ID / Client Secret";
101
+ readonly workbuddyHelp: "获取凭证:通过 CodeBuddy OAuth 登录获取 access/refresh token。WorkBuddy 通过 Centrifuge WebSocket 连接微信客服。";
102
+ readonly cardTemplateId: "卡片模板 ID";
103
+ readonly workbuddyAccessToken: "Access Token";
104
+ readonly workbuddyRefreshToken: "Refresh Token";
105
+ readonly workbuddyUserId: "User ID";
106
+ readonly workbuddyBaseUrl: "基础 URL";
107
+ readonly optional: "可选";
108
+ readonly commaSeparatedIds: "多个 ID 用逗号分隔";
109
+ readonly aiTitle: "AI 工具配置";
110
+ readonly aiHint: "Claude SDK:左侧栏「配置文件」→ ~/.claude/settings.json。各渠道用哪个 AI 在上方「平台」里分别设置。若任一平台选 Codex/CodeBuddy,再在下方填对应 CLI 路径。";
111
+ readonly aiPerPlatformHint: "每个平台的 AI 工具在上方「平台」中配置(默认 claude)。本区域设置共用路径、代理与日志。";
112
+ readonly claudeNote: "Claude 凭证仍然从环境变量或 ~/.claude/settings.json 读取。这个页面只管理本地桥接配置,不负责 Claude 账号登录。";
113
+ readonly aiCommonTitle: "公共默认配置";
114
+ readonly aiCommonHint: "先选择默认 AI 工具,下方再显示对应的工具专属配置。";
115
+ readonly aiToolConfigTitle: "工具专属配置";
116
+ readonly aiToolConfigHint: "只显示当前选中 AI 工具的字段。";
117
+ readonly aiConfigSummary: "正在编辑 {tool} 的配置,如需配置其他工具,可在上方切换。";
118
+ readonly aiTool: "默认 AI 工具";
119
+ readonly workDir: "默认工作目录";
120
+ readonly claudeCli: "Claude CLI 路径";
121
+ readonly codexCli: "Codex CLI 路径";
122
+ readonly codebuddyCli: "CodeBuddy CLI 路径";
123
+ readonly opencodeSdkInfo: "OpenCode 使用 SDK 集成,无需配置 CLI 路径。";
124
+ readonly codexProxy: "Codex 代理";
125
+ readonly codexApiKey: "OPENAI_API_KEY";
126
+ readonly codexApiKeyTip: "设置 Codex 使用的 OpenAI API Key。也可以在下方编辑 auth 文件。";
127
+ readonly claudeConfigPath: "配置文件位置";
128
+ readonly claudeSkipPermissions: "跳过 Claude 权限确认";
129
+ readonly claudeSkipPermissionsTip: "默认开启。Claude SDK 不会请求权限,直接执行命令。取消勾选后恢复原生权限确认流程。";
130
+ readonly claudeProxy: "代理(可选)";
131
+ readonly hookPort: "Hook 端口";
132
+ readonly logLevel: "日志级别";
133
+ readonly logLevelDefault: "default(程序默认)";
134
+ readonly validate: "校验配置";
135
+ readonly test: "校验配置";
136
+ readonly testing: "校验中...";
137
+ readonly testSuccess: "配置校验通过。";
138
+ readonly testFailed: "配置有问题:{error}";
139
+ readonly save: "保存配置";
140
+ readonly start: "启动桥接";
141
+ readonly stop: "停止桥接";
142
+ readonly bridgeRunning: "桥接运行中(pid {pid})";
143
+ readonly bridgeStopped: "桥接已停止";
144
+ readonly bridgeActive: "桥接 worker 正在运行。";
145
+ readonly bridgeInactive: "桥接 worker 当前已停止。";
146
+ readonly summaryEnabled: "已启用平台:{platforms} | AI 工具:{tool}";
147
+ readonly summaryEmpty: "暂未启用平台 | AI 工具:{tool}";
148
+ readonly ready: "控制台已就绪。";
149
+ readonly validationOk: "配置校验通过。";
150
+ readonly saveOk: "配置已保存。";
151
+ readonly startOk: "桥接已启动。";
152
+ readonly stopOk: "桥接已停止。";
153
+ readonly configEditorTitle: "JSON 配置编辑器";
154
+ readonly configEditorHint: "直接编辑 ~/.open-im/config.json";
155
+ readonly claudeSettingsLabel: "~/.claude/settings.json";
156
+ readonly codexSettingsLabel: "~/.codex/auth.json";
157
+ readonly codexSettingsCardHint: "Codex CLI 认证信息(OPENAI_API_KEY 等)。在此配置 API 访问,或在 Codex 工具标签页填写 OPENAI_API_KEY。";
158
+ readonly codebuddySettingsLabel: "~/.codebuddy/settings.json";
159
+ readonly codebuddySettingsCardHint: "CodeBuddy CLI 配置(模型、插件、沙箱规则等)。直接编辑。";
160
+ readonly opencodeSettingsLabel: "~/.config/opencode/opencode.json";
161
+ readonly opencodeSettingsCardHint: "OpenCode SDK 配置(MCP 服务器等)。直接编辑。";
162
+ readonly configJson: "~/.open-im/config.json";
163
+ readonly configJsonHint: "编辑配置 JSON。点击服务区的“保存配置”按钮后侘存更改。";
164
+ readonly formatJson: "格式化";
165
+ readonly resetJson: "重置";
166
+ readonly saveBtn: "保存";
167
+ readonly jsonValid: "JSON 有效";
168
+ readonly jsonInvalid: "JSON 无效:{error}";
169
+ readonly validationNoPlatformEnabled: "保存前请至少启用一个 IM 平台,并填完必填凭证。";
170
+ readonly validationPlatformIncomplete: "平台「{platform}」已启用,但以下必填项为空:{fields}";
171
+ readonly validationAiCodexNoCli: "默认 AI Codex,但 Codex CLI 路径为空。请在 AI 区填写,或改默认工具。";
172
+ readonly validationAiCodebuddyNoCli: "默认 AI CodeBuddy,但 CodeBuddy CLI 路径为空。请在 AI 区填写,或改默认工具。";
173
+ readonly tipTelegramToken: " Telegram <a href=\"https://t.me/BotFather\" target=\"_blank\" rel=\"noopener\">@BotFather</a>,发 /newbot 创建机器人后复制 Token。";
174
+ readonly tipFeishuAppId: "飞书开放平台应用凭证与基础信息 → App ID";
175
+ readonly tipFeishuSecret: "同一页 App Secret(可重置后查看)。";
176
+ readonly tipQqAppId: "<a href=\"https://bot.q.qq.com\" target=\"_blank\" rel=\"noopener\">QQ 开放平台</a> → 机器人 → App ID";
177
+ readonly tipQqSecret: "同一处获取 App Secret";
178
+ readonly tipWeworkCorp: "企业微信管理后台应用查省 Corp ID / 智能机器人 Bot ID Secret";
179
+ readonly tipDingtalkClient: "<a href=\"https://open-dev.dingtalk.com\" target=\"_blank\" rel=\"noopener\">钉钉开放平台</a> → 企业内部应用AppKey / AppSecret。";
180
+ readonly tipWorkbuddyToken: "前往“AI 工具配置”或使用设置向导配置 WorkBuddy OAuth;或粘贴 CodeBuddy 登录后的 Token。";
181
+ readonly tipClawbotApiToken: "使用平台卡片中的“扫码登录”按钮,或从 ClawBot iLink 登录后复制 Token。";
182
+ readonly navSetupWizard: "设置向导";
183
+ readonly wizardStepLabel_welcome: "欢迎";
184
+ readonly wizardStepLabel_ai: "AI 后端";
185
+ readonly wizardStepLabel_platforms: "平台";
186
+ readonly wizardStepLabel_credentials: "凭证";
187
+ readonly wizardStepLabel_review: "确认";
188
+ readonly wizardWelcomeTitle: "欢迎使用 open-im";
189
+ readonly wizardWelcomeDesc: "这个向导将引导你配置 AI 编程助手桥接。大约需要 2 分钟。";
190
+ readonly wizardStepAi: "选择 AI 后端和工作目录";
191
+ readonly wizardStepPlatforms: "选择要连接的聊天平台";
192
+ readonly wizardStepCredentials: "输入 API Key Token";
193
+ readonly wizardStepReview: "检查配置,然后保存启动";
194
+ readonly wizardAiTitle: "AI 后端";
195
+ readonly wizardAiDesc: "open-im 将聊天 App 桥接到 AI 编程工具。在下方设置路径,平台级的 AI 选择在下一步。";
196
+ readonly wizardWorkDirHint: "AI 工具的工作目录。留空则使用桥接进程的工作目录。";
197
+ readonly wizardPlatformsTitle: "选择平台";
198
+ readonly wizardPlatformsDesc: "至少选择一个聊天平台。后续可在概览页启用更多。";
199
+ readonly wizardPickAtLeastOne: "请至少选择一个平台。";
200
+ readonly wizardCredentialsTitle: "输入凭证";
201
+ readonly wizardCredentialsDesc: "为每个已启用的平台填写必要的凭证信息。";
202
+ readonly wizardReviewTitle: "确认并启动";
203
+ readonly wizardReviewDesc: "检查下方配置。准备好后点击“保存并启动”应用配置并启动桥接。";
204
+ readonly wizardDoneTitle: "配置完成!";
205
+ readonly wizardDoneDesc: "桥接已运行。你现在可以在任何已启用的平台上向机器人发消息了。";
206
+ readonly wizardGoToDashboard: "进入概览";
207
+ readonly wizardBack: "上一步";
208
+ readonly wizardNext: "下一步";
209
+ readonly wizardFinish: "保存并启动";
210
+ readonly wizardWorking: "处理中...";
211
+ readonly wizardSaving: "正在保存配置...";
212
+ readonly wizardStarting: "正在启动桥接...";
213
+ readonly wizardStepLabel_claudeApi: "Claude API";
214
+ readonly wizardStepClaudeApi: "配置 Claude API 访问";
215
+ readonly wizardClaudeApiTitle: "Claude API 配置";
216
+ readonly wizardClaudeApiDesc: "选择 Claude 的认证方式,这是 AI 助手工作的必要配置。";
217
+ readonly wizardApiTypeLabel: "API 类型";
218
+ readonly wizardApiOfficial: "官方 Anthropic API";
219
+ readonly wizardApiOfficialDesc: "使用 Anthropic API Key Auth Token";
220
+ readonly wizardApiThirdparty: "第三方模型";
221
+ readonly wizardApiThirdpartyDesc: "使用兼容的第三方 API 端点";
222
+ readonly wizardApiSkip: "已配置";
223
+ readonly wizardApiSkipDesc: "如果已配置 API 访问,可跳过此步";
224
+ readonly wizardAuthTypeLabel: "认证方式";
225
+ readonly wizardAuthApiKey: "API Key";
226
+ readonly wizardAuthToken: "Auth Token";
227
+ readonly wizardLoading: "加载中...";
228
+ readonly aiCommandPickerTitle: "🤖 AI 工具";
229
+ readonly aiCommandPickerHint: "这个渠道收到的消息会用上面的 AI 回复";
230
+ readonly platformStatusOn: "已连接";
231
+ readonly platformStatusOff: "未连接";
461
232
  };