@kikkimo/claude-launcher 2.4.0 → 3.0.0
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 +71 -0
- package/README.md +32 -17
- package/claude-launcher +638 -393
- package/docs/README-zh.md +32 -17
- package/lib/api-manager.js +136 -11
- package/lib/auth/password-input.js +8 -4
- package/lib/auth/password-validator.js +83 -48
- package/lib/i18n/index.js +4 -3
- package/lib/i18n/language-manager.js +4 -3
- package/lib/i18n/locales/de.js +93 -9
- package/lib/i18n/locales/en.js +93 -9
- package/lib/i18n/locales/es.js +93 -9
- package/lib/i18n/locales/fr.js +93 -9
- package/lib/i18n/locales/it.js +93 -9
- package/lib/i18n/locales/ja.js +93 -9
- package/lib/i18n/locales/ko.js +93 -9
- package/lib/i18n/locales/pt.js +93 -9
- package/lib/i18n/locales/ru.js +93 -9
- package/lib/i18n/locales/zh-TW.js +93 -9
- package/lib/i18n/locales/zh.js +93 -9
- package/lib/launcher.js +131 -93
- package/lib/presets/providers.js +39 -18
- package/lib/ui/api-editor.js +210 -0
- package/lib/ui/interactive-table.js +216 -99
- package/lib/ui/menu.js +78 -55
- package/lib/ui/prompts.js +168 -139
- package/lib/ui/screen.js +125 -0
- package/lib/utils/stdin-manager.js +11 -9
- package/lib/utils/version-checker.js +63 -3
- package/package.json +2 -2
package/lib/i18n/locales/pt.js
CHANGED
|
@@ -10,10 +10,11 @@ module.exports = {
|
|
|
10
10
|
title: "Menu Principal",
|
|
11
11
|
launch_default: "Executar Claude Code",
|
|
12
12
|
launch_skip: "Executar Claude Code (Pular Permissões Automaticamente)",
|
|
13
|
+
launch_auto_mode: "Iniciar Claude Code (Ativar modo automatico)",
|
|
13
14
|
launch_api: "Executar Claude Code com API de Terceiros",
|
|
14
15
|
launch_api_skip: "Executar Claude Code com API de Terceiros (Pular Permissões Automaticamente)",
|
|
15
16
|
api_management: "Gerenciamento de API de Terceiros",
|
|
16
|
-
|
|
17
|
+
config_management: "Gerenciamento de Configuração",
|
|
17
18
|
version_check: "Verificação de Atualização de Versão",
|
|
18
19
|
exit: "Sair"
|
|
19
20
|
},
|
|
@@ -21,11 +22,26 @@ module.exports = {
|
|
|
21
22
|
title: "Gerenciamento de API de Terceiros",
|
|
22
23
|
add_new: "Adicionar Nova API de Terceiros",
|
|
23
24
|
remove: "Remover API",
|
|
25
|
+
edit: "Edit API",
|
|
24
26
|
switch: "Trocar API Ativa",
|
|
25
27
|
statistics: "Ver Estatísticas da API",
|
|
26
28
|
export: "Exportar Configuração",
|
|
27
29
|
import: "Importar Configuração",
|
|
28
30
|
change_password: "Alterar Senha",
|
|
31
|
+
manual_upgrade: "Atualização Manual de Modelo",
|
|
32
|
+
back: "Voltar ao Menu Principal"
|
|
33
|
+
},
|
|
34
|
+
config: {
|
|
35
|
+
title: "Gerenciamento de Configuração",
|
|
36
|
+
language: "Configurações de Idioma",
|
|
37
|
+
auto_model_upgrade: "Atualização Automática de Modelo",
|
|
38
|
+
model_upgrade_notification: "Notificação de Atualização de Modelo",
|
|
39
|
+
telemetry: "Telemetria Anthropic",
|
|
40
|
+
api_launch_mode: "Modo de Inicialização de API de Terceiros",
|
|
41
|
+
back: "Voltar ao Menu Principal"
|
|
42
|
+
},
|
|
43
|
+
api_select: {
|
|
44
|
+
title: "Selecione uma API para iniciar:",
|
|
29
45
|
back: "Voltar ao Menu Principal"
|
|
30
46
|
},
|
|
31
47
|
remove_api: {
|
|
@@ -203,6 +219,23 @@ module.exports = {
|
|
|
203
219
|
remove_confirm: "API para remover: {0}",
|
|
204
220
|
cannot_undo: "Esta ação não pode ser desfeita!",
|
|
205
221
|
removed_info: "Removida: {0}"
|
|
222
|
+
},
|
|
223
|
+
edit: {
|
|
224
|
+
select_api: 'Select API to edit',
|
|
225
|
+
current_value: 'Current value: {0}',
|
|
226
|
+
new_value: 'New value: ',
|
|
227
|
+
success: '✅ {0} updated successfully',
|
|
228
|
+
cancelled: 'Edit cancelled',
|
|
229
|
+
back: 'Back',
|
|
230
|
+
field_name: 'Name',
|
|
231
|
+
field_provider: 'Provider',
|
|
232
|
+
field_base_url: 'Base URL',
|
|
233
|
+
field_model: 'Model',
|
|
234
|
+
name_required: 'Name cannot be empty when editing',
|
|
235
|
+
duplicate: 'This change would create a duplicate configuration',
|
|
236
|
+
provider_url_mismatch: 'Provider and URL may be inconsistent',
|
|
237
|
+
provider_url_mismatch_detail: 'Provider: {0} / URL suggests: {1}',
|
|
238
|
+
url_provider_hint: "URL matches provider '{0}' but current provider is '{1}'. Consider updating Provider field."
|
|
206
239
|
}
|
|
207
240
|
},
|
|
208
241
|
|
|
@@ -276,6 +309,10 @@ module.exports = {
|
|
|
276
309
|
good: "Boa",
|
|
277
310
|
strong: "Forte",
|
|
278
311
|
very_strong: "Muito Forte"
|
|
312
|
+
},
|
|
313
|
+
guard: {
|
|
314
|
+
delete: { header: '🗑️ Remove API — Password required to verify identity' },
|
|
315
|
+
edit: { header: '✏️ Edit API — Password required to verify identity' }
|
|
279
316
|
}
|
|
280
317
|
},
|
|
281
318
|
|
|
@@ -323,15 +360,22 @@ module.exports = {
|
|
|
323
360
|
|
|
324
361
|
// Navigation and UI
|
|
325
362
|
navigation: {
|
|
326
|
-
use_arrows: "Use as teclas de seta ↑↓ para navegar, Enter para selecionar, Duplo Ctrl+C para sair",
|
|
327
|
-
use_arrows_esc: "Use ↑↓ para navegar, Enter para {0}, ESC para
|
|
363
|
+
use_arrows: "Use as teclas de seta ↑↓ para navegar, Enter/Espaço para selecionar, Duplo Ctrl+C para sair",
|
|
364
|
+
use_arrows_esc: "Use ↑↓ para navegar, Enter para {0}, ESC para cancelar",
|
|
365
|
+
use_arrows_page_esc: "←→ Page {0}/{1}, ↑↓ to navigate, Enter to {2}, ESC to cancel",
|
|
328
366
|
use_number_keys: "Use as teclas numéricas para selecionar:",
|
|
329
367
|
currently_active: "API atualmente ativa",
|
|
330
368
|
select_action: "Selecione uma ação:",
|
|
331
369
|
no_options: "Nenhuma opção disponível",
|
|
332
370
|
enter_choice: "Digite sua escolha ({0}, ou qualquer outra tecla para voltar ao menu principal):",
|
|
333
371
|
arrow_keys_not_available: "Teclas de seta não disponíveis. Digite o número da seleção (1-{0}):",
|
|
334
|
-
enter_choice_prompt: "[>] Digite sua escolha (1-2, ou qualquer outra tecla para voltar ao menu principal): "
|
|
372
|
+
enter_choice_prompt: "[>] Digite sua escolha (1-2, ou qualquer outra tecla para voltar ao menu principal): ",
|
|
373
|
+
action: {
|
|
374
|
+
edit: 'edit',
|
|
375
|
+
remove: 'remove',
|
|
376
|
+
switch: 'switch',
|
|
377
|
+
select: 'select'
|
|
378
|
+
}
|
|
335
379
|
},
|
|
336
380
|
|
|
337
381
|
// Launch process
|
|
@@ -572,19 +616,15 @@ module.exports = {
|
|
|
572
616
|
model_upgrade: {
|
|
573
617
|
notification: "Atualização de modelo disponível: {0} → {1}",
|
|
574
618
|
notification_api: "API: {0}",
|
|
575
|
-
notification_hint: "
|
|
619
|
+
notification_hint: "Atualização auto: \"Gerenciamento de Configuração\" / Manual: \"Gerenciamento de API de Terceiros > Atualização Manual de Modelo\"",
|
|
576
620
|
auto_upgraded: "Modelo atualizado automaticamente: {0} → {1}",
|
|
577
621
|
|
|
578
|
-
settings_title: "Configurações de atualização de modelo",
|
|
579
622
|
current_config: "Configuração atual",
|
|
580
623
|
auto_upgrade_label: "Usar automaticamente o modelo mais recente",
|
|
581
624
|
auto_upgrade_on: "ATIVADO",
|
|
582
625
|
auto_upgrade_off: "DESATIVADO",
|
|
583
626
|
|
|
584
|
-
menu_toggle_auto_on: "Atualização auto [● ATIVADO]",
|
|
585
|
-
menu_toggle_auto_off: "Atualização auto [○ DESATIVADO]",
|
|
586
627
|
menu_manual_upgrade: "Atualizar todos os modelos manualmente",
|
|
587
|
-
menu_back: "Voltar",
|
|
588
628
|
|
|
589
629
|
manual_title: "Verificação de atualização de modelo",
|
|
590
630
|
manual_checking: "Verificando {0} configurações de API...",
|
|
@@ -599,5 +639,49 @@ module.exports = {
|
|
|
599
639
|
manual_complete: "Atualização completa!",
|
|
600
640
|
manual_stats_upgraded: "Atualizados: {0}",
|
|
601
641
|
manual_stats_skipped: "Ignorados: {0} ({1} já atualizados, {2} sem info de atualização)"
|
|
642
|
+
},
|
|
643
|
+
hints: {
|
|
644
|
+
auto_mode_info: 'Pressione Shift+Tab após iniciar para alternar para o modo de execução automática',
|
|
645
|
+
active_api_info: 'Ativo: {0} / {1}',
|
|
646
|
+
no_active_api: 'Nenhuma API ativa configurada. Vá para "Gerenciamento de API" para adicionar uma.',
|
|
647
|
+
direct_mode_desc: 'Modo de inicialização direta, inicia imediatamente com a API ativa',
|
|
648
|
+
direct_mode_api_info: 'API: {0} | Provedor: {1}',
|
|
649
|
+
direct_mode_api_detail: 'Modelo: {0} | Último uso: {1}',
|
|
650
|
+
direct_mode_change: 'O modo de inicialização pode ser alterado em "Gerenciamento de Configuração"',
|
|
651
|
+
direct_mode_no_active: 'Modo de inicialização direta, mas nenhuma API ativa selecionada',
|
|
652
|
+
direct_mode_no_active_detail: '{0} APIs configuradas, selecione uma em "Gerenciamento de API de Terceiros"',
|
|
653
|
+
select_mode_desc: 'Modo seleção, escolha uma API da lista antes de iniciar',
|
|
654
|
+
select_mode_change: 'O modo de inicialização pode ser alterado em "Gerenciamento de Configuração"',
|
|
655
|
+
select_mode_api_count: '{0} APIs configuradas, ativa: {1}',
|
|
656
|
+
select_mode_active_none: 'nenhuma',
|
|
657
|
+
no_api_configured: 'Nenhuma API de terceiros configurada. Adicione uma em "Gerenciamento de API de Terceiros" primeiro',
|
|
658
|
+
api_management_info: '{0} APIs configuradas, ativa: {1}',
|
|
659
|
+
config_summary: 'Idioma: {0} | Modo de inicialização: {1} | Telemetria: {2}',
|
|
660
|
+
edit_password_required: '🔒 Password verification required to edit API configuration',
|
|
661
|
+
remove_password_required: '🔒 Password verification required to remove API',
|
|
662
|
+
export_password_required: '🔒 Password verification required to export configuration',
|
|
663
|
+
import_password_required: '🔒 Password verification required to import configuration',
|
|
664
|
+
config: {
|
|
665
|
+
language: 'Alterar idioma de exibição, atual: {0}',
|
|
666
|
+
auto_upgrade: 'Detectar e atualizar automaticamente versões de modelos para APIs de terceiros',
|
|
667
|
+
upgrade_notification: 'Mostrar notificação de atualização de modelo no topo do menu principal',
|
|
668
|
+
telemetry: 'Injeta DISABLE_TELEMETRY=1 quando desabilitado. Recomendado: OFF',
|
|
669
|
+
launch_mode: 'Direto: iniciar com API ativa / Seleção: escolher da lista primeiro'
|
|
670
|
+
},
|
|
671
|
+
api_select: {
|
|
672
|
+
info: 'API: {0}',
|
|
673
|
+
detail: 'Provedor: {0} | Modelo: {1}',
|
|
674
|
+
usage: 'Uso: {0} vezes | Último uso: {1}'
|
|
675
|
+
}
|
|
676
|
+
},
|
|
677
|
+
|
|
678
|
+
config: {
|
|
679
|
+
values: {
|
|
680
|
+
on: 'ATIVADO',
|
|
681
|
+
off: 'DESATIVADO',
|
|
682
|
+
direct_mode: 'Modo direto',
|
|
683
|
+
select_mode: 'Modo seleção',
|
|
684
|
+
recommended_off: 'DESATIVADO (Recomendado)'
|
|
685
|
+
}
|
|
602
686
|
}
|
|
603
687
|
};
|
package/lib/i18n/locales/ru.js
CHANGED
|
@@ -10,10 +10,11 @@ module.exports = {
|
|
|
10
10
|
title: "Главное меню",
|
|
11
11
|
launch_default: "Запустить Claude Code",
|
|
12
12
|
launch_skip: "Запустить Claude Code (Автопропуск разрешений)",
|
|
13
|
+
launch_auto_mode: "Запустить Claude Code (Включить авторежим)",
|
|
13
14
|
launch_api: "Запустить Claude Code со сторонним API",
|
|
14
15
|
launch_api_skip: "Запустить Claude Code со сторонним API (Автопропуск разрешений)",
|
|
15
16
|
api_management: "Управление сторонними API",
|
|
16
|
-
|
|
17
|
+
config_management: "Управление конфигурацией",
|
|
17
18
|
version_check: "Проверка обновлений версии",
|
|
18
19
|
exit: "Выход"
|
|
19
20
|
},
|
|
@@ -21,11 +22,26 @@ module.exports = {
|
|
|
21
22
|
title: "Управление сторонними API",
|
|
22
23
|
add_new: "Добавить новый сторонний API",
|
|
23
24
|
remove: "Удалить API",
|
|
25
|
+
edit: "Edit API",
|
|
24
26
|
switch: "Переключить активный API",
|
|
25
27
|
statistics: "Просмотр статистики API",
|
|
26
28
|
export: "Экспорт конфигурации",
|
|
27
29
|
import: "Импорт конфигурации",
|
|
28
30
|
change_password: "Изменить пароль",
|
|
31
|
+
manual_upgrade: "Ручное обновление модели",
|
|
32
|
+
back: "Вернуться в главное меню"
|
|
33
|
+
},
|
|
34
|
+
config: {
|
|
35
|
+
title: "Управление конфигурацией",
|
|
36
|
+
language: "Настройки языка",
|
|
37
|
+
auto_model_upgrade: "Автообновление модели",
|
|
38
|
+
model_upgrade_notification: "Уведомление об обновлении модели",
|
|
39
|
+
telemetry: "Телеметрия Anthropic",
|
|
40
|
+
api_launch_mode: "Режим запуска стороннего API",
|
|
41
|
+
back: "Вернуться в главное меню"
|
|
42
|
+
},
|
|
43
|
+
api_select: {
|
|
44
|
+
title: "Выберите API для запуска:",
|
|
29
45
|
back: "Вернуться в главное меню"
|
|
30
46
|
},
|
|
31
47
|
remove_api: {
|
|
@@ -203,6 +219,23 @@ module.exports = {
|
|
|
203
219
|
remove_confirm: "API для удаления: {0}",
|
|
204
220
|
cannot_undo: "Это действие нельзя отменить!",
|
|
205
221
|
removed_info: "Удален: {0}"
|
|
222
|
+
},
|
|
223
|
+
edit: {
|
|
224
|
+
select_api: 'Select API to edit',
|
|
225
|
+
current_value: 'Current value: {0}',
|
|
226
|
+
new_value: 'New value: ',
|
|
227
|
+
success: '✅ {0} updated successfully',
|
|
228
|
+
cancelled: 'Edit cancelled',
|
|
229
|
+
back: 'Back',
|
|
230
|
+
field_name: 'Name',
|
|
231
|
+
field_provider: 'Provider',
|
|
232
|
+
field_base_url: 'Base URL',
|
|
233
|
+
field_model: 'Model',
|
|
234
|
+
name_required: 'Name cannot be empty when editing',
|
|
235
|
+
duplicate: 'This change would create a duplicate configuration',
|
|
236
|
+
provider_url_mismatch: 'Provider and URL may be inconsistent',
|
|
237
|
+
provider_url_mismatch_detail: 'Provider: {0} / URL suggests: {1}',
|
|
238
|
+
url_provider_hint: "URL matches provider '{0}' but current provider is '{1}'. Consider updating Provider field."
|
|
206
239
|
}
|
|
207
240
|
},
|
|
208
241
|
|
|
@@ -276,6 +309,10 @@ module.exports = {
|
|
|
276
309
|
good: "Хороший",
|
|
277
310
|
strong: "Сильный",
|
|
278
311
|
very_strong: "Очень сильный"
|
|
312
|
+
},
|
|
313
|
+
guard: {
|
|
314
|
+
delete: { header: '🗑️ Remove API — Password required to verify identity' },
|
|
315
|
+
edit: { header: '✏️ Edit API — Password required to verify identity' }
|
|
279
316
|
}
|
|
280
317
|
},
|
|
281
318
|
|
|
@@ -323,15 +360,22 @@ module.exports = {
|
|
|
323
360
|
|
|
324
361
|
// Navigation and UI
|
|
325
362
|
navigation: {
|
|
326
|
-
use_arrows: "Используйте клавиши ↑↓ для навигации, Enter для выбора, двойное нажатие Ctrl+C для выхода",
|
|
327
|
-
use_arrows_esc: "Используйте ↑↓ для навигации, Enter для {0}, ESC для
|
|
363
|
+
use_arrows: "Используйте клавиши ↑↓ для навигации, Enter/Пробел для выбора, двойное нажатие Ctrl+C для выхода",
|
|
364
|
+
use_arrows_esc: "Используйте ↑↓ для навигации, Enter для {0}, ESC для отмены",
|
|
365
|
+
use_arrows_page_esc: "←→ Page {0}/{1}, ↑↓ to navigate, Enter to {2}, ESC to cancel",
|
|
328
366
|
use_number_keys: "Используйте цифровые клавиши для выбора:",
|
|
329
367
|
currently_active: "Текущий активный API",
|
|
330
368
|
select_action: "Выберите действие:",
|
|
331
369
|
no_options: "Нет доступных вариантов",
|
|
332
370
|
enter_choice: "Введите ваш выбор ({0}, или любую другую клавишу для возврата в главное меню):",
|
|
333
371
|
arrow_keys_not_available: "Клавиши стрелок недоступны. Введите номер выбора (1-{0}):",
|
|
334
|
-
enter_choice_prompt: "[>] Введите ваш выбор (1-2, или любую другую клавишу для возврата в главное меню): "
|
|
372
|
+
enter_choice_prompt: "[>] Введите ваш выбор (1-2, или любую другую клавишу для возврата в главное меню): ",
|
|
373
|
+
action: {
|
|
374
|
+
edit: 'edit',
|
|
375
|
+
remove: 'remove',
|
|
376
|
+
switch: 'switch',
|
|
377
|
+
select: 'select'
|
|
378
|
+
}
|
|
335
379
|
},
|
|
336
380
|
|
|
337
381
|
// Launch process
|
|
@@ -572,19 +616,15 @@ module.exports = {
|
|
|
572
616
|
model_upgrade: {
|
|
573
617
|
notification: "Доступно обновление модели: {0} → {1}",
|
|
574
618
|
notification_api: "API: {0}",
|
|
575
|
-
notification_hint: "
|
|
619
|
+
notification_hint: "Автообновление: \"Управление конфигурацией\" / Вручную: \"Управление сторонними API > Ручное обновление модели\"",
|
|
576
620
|
auto_upgraded: "Модель автоматически обновлена: {0} → {1}",
|
|
577
621
|
|
|
578
|
-
settings_title: "Настройки обновления модели",
|
|
579
622
|
current_config: "Текущая конфигурация",
|
|
580
623
|
auto_upgrade_label: "Автоматически использовать последнюю модель",
|
|
581
624
|
auto_upgrade_on: "ВКЛ",
|
|
582
625
|
auto_upgrade_off: "ВЫКЛ",
|
|
583
626
|
|
|
584
|
-
menu_toggle_auto_on: "Автообновление [● ВКЛ]",
|
|
585
|
-
menu_toggle_auto_off: "Автообновление [○ ВЫКЛ]",
|
|
586
627
|
menu_manual_upgrade: "Обновить все модели вручную",
|
|
587
|
-
menu_back: "Назад",
|
|
588
628
|
|
|
589
629
|
manual_title: "Проверка обновления модели",
|
|
590
630
|
manual_checking: "Проверка {0} конфигураций API...",
|
|
@@ -599,5 +639,49 @@ module.exports = {
|
|
|
599
639
|
manual_complete: "Обновление завершено!",
|
|
600
640
|
manual_stats_upgraded: "Обновлено: {0}",
|
|
601
641
|
manual_stats_skipped: "Пропущено: {0} ({1} уже обновлены, {2} без информации об обновлении)"
|
|
642
|
+
},
|
|
643
|
+
hints: {
|
|
644
|
+
auto_mode_info: 'Нажмите Shift+Tab после запуска для переключения в режим автовыполнения',
|
|
645
|
+
active_api_info: 'Активный: {0} / {1}',
|
|
646
|
+
no_active_api: 'Нет настроенного активного API. Перейдите в "Управление API", чтобы добавить.',
|
|
647
|
+
direct_mode_desc: 'Режим прямого запуска, запускается сразу с активным API',
|
|
648
|
+
direct_mode_api_info: 'API: {0} | Провайдер: {1}',
|
|
649
|
+
direct_mode_api_detail: 'Модель: {0} | Последнее использование: {1}',
|
|
650
|
+
direct_mode_change: 'Режим запуска можно изменить в "Управление конфигурацией"',
|
|
651
|
+
direct_mode_no_active: 'Режим прямого запуска, но активный API не выбран',
|
|
652
|
+
direct_mode_no_active_detail: 'Настроено {0} API, выберите один в "Управление сторонними API"',
|
|
653
|
+
select_mode_desc: 'Режим выбора, выберите API из списка перед запуском',
|
|
654
|
+
select_mode_change: 'Режим запуска можно изменить в "Управление конфигурацией"',
|
|
655
|
+
select_mode_api_count: 'Настроено {0} API, активный: {1}',
|
|
656
|
+
select_mode_active_none: 'нет',
|
|
657
|
+
no_api_configured: 'Сторонние API не настроены. Сначала добавьте один в "Управление сторонними API"',
|
|
658
|
+
api_management_info: 'Настроено {0} API, активный: {1}',
|
|
659
|
+
config_summary: 'Язык: {0} | Режим запуска: {1} | Телеметрия: {2}',
|
|
660
|
+
edit_password_required: '🔒 Password verification required to edit API configuration',
|
|
661
|
+
remove_password_required: '🔒 Password verification required to remove API',
|
|
662
|
+
export_password_required: '🔒 Password verification required to export configuration',
|
|
663
|
+
import_password_required: '🔒 Password verification required to import configuration',
|
|
664
|
+
config: {
|
|
665
|
+
language: 'Переключить язык отображения, текущий: {0}',
|
|
666
|
+
auto_upgrade: 'Автоопределение и обновление версий моделей для сторонних API',
|
|
667
|
+
upgrade_notification: 'Показывать уведомление об обновлении модели вверху главного меню',
|
|
668
|
+
telemetry: 'Инжектирует DISABLE_TELEMETRY=1 при отключении. Рекомендуется: ВЫКЛ',
|
|
669
|
+
launch_mode: 'Прямой: запуск с активным API / Выбор: сначала выбрать из списка'
|
|
670
|
+
},
|
|
671
|
+
api_select: {
|
|
672
|
+
info: 'API: {0}',
|
|
673
|
+
detail: 'Провайдер: {0} | Модель: {1}',
|
|
674
|
+
usage: 'Использование: {0} раз | Последнее использование: {1}'
|
|
675
|
+
}
|
|
676
|
+
},
|
|
677
|
+
|
|
678
|
+
config: {
|
|
679
|
+
values: {
|
|
680
|
+
on: 'ВКЛ',
|
|
681
|
+
off: 'ВЫКЛ',
|
|
682
|
+
direct_mode: 'Прямой режим',
|
|
683
|
+
select_mode: 'Режим выбора',
|
|
684
|
+
recommended_off: 'ВЫКЛ (Рекомендуется)'
|
|
685
|
+
}
|
|
602
686
|
}
|
|
603
687
|
};
|
|
@@ -10,10 +10,11 @@ module.exports = {
|
|
|
10
10
|
title: "主選單",
|
|
11
11
|
launch_default: "啟動 Claude Code",
|
|
12
12
|
launch_skip: "啟動 Claude Code(自動跳過權限詢問)",
|
|
13
|
+
launch_auto_mode: "啟動 Claude Code(啟用自動模式)",
|
|
13
14
|
launch_api: "使用第三方API啟動 Claude Code",
|
|
14
15
|
launch_api_skip: "使用第三方API啟動 Claude Code(自動跳過權限詢問)",
|
|
15
16
|
api_management: "第三方API管理",
|
|
16
|
-
|
|
17
|
+
config_management: "設定管理",
|
|
17
18
|
version_check: "版本更新檢查",
|
|
18
19
|
exit: "退出"
|
|
19
20
|
},
|
|
@@ -21,11 +22,26 @@ module.exports = {
|
|
|
21
22
|
title: "第三方API管理",
|
|
22
23
|
add_new: "新增第三方API",
|
|
23
24
|
remove: "刪除API",
|
|
25
|
+
edit: "Edit API",
|
|
24
26
|
switch: "切換活躍的API",
|
|
25
27
|
statistics: "查看API統計",
|
|
26
28
|
export: "匯出設定",
|
|
27
29
|
import: "匯入設定",
|
|
28
30
|
change_password: "修改密碼",
|
|
31
|
+
manual_upgrade: "手動升級模型",
|
|
32
|
+
back: "返回主選單"
|
|
33
|
+
},
|
|
34
|
+
config: {
|
|
35
|
+
title: "設定管理",
|
|
36
|
+
language: "語言設定",
|
|
37
|
+
auto_model_upgrade: "模型自動升級",
|
|
38
|
+
model_upgrade_notification: "模型升級提示",
|
|
39
|
+
telemetry: "Anthropic 遙測資料",
|
|
40
|
+
api_launch_mode: "第三方API啟動模式",
|
|
41
|
+
back: "返回主選單"
|
|
42
|
+
},
|
|
43
|
+
api_select: {
|
|
44
|
+
title: "選擇要啟動的API:",
|
|
29
45
|
back: "返回主選單"
|
|
30
46
|
},
|
|
31
47
|
remove_api: {
|
|
@@ -203,6 +219,23 @@ module.exports = {
|
|
|
203
219
|
remove_confirm: "要刪除的API:{0}",
|
|
204
220
|
cannot_undo: "此操作無法復原!",
|
|
205
221
|
removed_info: "已刪除:{0}"
|
|
222
|
+
},
|
|
223
|
+
edit: {
|
|
224
|
+
select_api: 'Select API to edit',
|
|
225
|
+
current_value: 'Current value: {0}',
|
|
226
|
+
new_value: 'New value: ',
|
|
227
|
+
success: '✅ {0} updated successfully',
|
|
228
|
+
cancelled: 'Edit cancelled',
|
|
229
|
+
back: 'Back',
|
|
230
|
+
field_name: 'Name',
|
|
231
|
+
field_provider: 'Provider',
|
|
232
|
+
field_base_url: 'Base URL',
|
|
233
|
+
field_model: 'Model',
|
|
234
|
+
name_required: 'Name cannot be empty when editing',
|
|
235
|
+
duplicate: 'This change would create a duplicate configuration',
|
|
236
|
+
provider_url_mismatch: 'Provider and URL may be inconsistent',
|
|
237
|
+
provider_url_mismatch_detail: 'Provider: {0} / URL suggests: {1}',
|
|
238
|
+
url_provider_hint: "URL matches provider '{0}' but current provider is '{1}'. Consider updating Provider field."
|
|
206
239
|
}
|
|
207
240
|
},
|
|
208
241
|
|
|
@@ -276,6 +309,10 @@ module.exports = {
|
|
|
276
309
|
good: "良好",
|
|
277
310
|
strong: "強",
|
|
278
311
|
very_strong: "極強"
|
|
312
|
+
},
|
|
313
|
+
guard: {
|
|
314
|
+
delete: { header: '🗑️ Remove API — Password required to verify identity' },
|
|
315
|
+
edit: { header: '✏️ Edit API — Password required to verify identity' }
|
|
279
316
|
}
|
|
280
317
|
},
|
|
281
318
|
|
|
@@ -323,15 +360,22 @@ module.exports = {
|
|
|
323
360
|
|
|
324
361
|
// 導航和介面
|
|
325
362
|
navigation: {
|
|
326
|
-
use_arrows: "使用 ↑↓
|
|
327
|
-
use_arrows_esc: "使用 ↑↓ 導航,Enter鍵{0},ESC
|
|
363
|
+
use_arrows: "使用 ↑↓ 方向鍵導航,回車/空格鍵選擇,連按兩次 Ctrl+C 退出",
|
|
364
|
+
use_arrows_esc: "使用 ↑↓ 導航,Enter鍵{0},ESC鍵取消",
|
|
365
|
+
use_arrows_page_esc: "←→ Page {0}/{1}, ↑↓ to navigate, Enter to {2}, ESC to cancel",
|
|
328
366
|
use_number_keys: "使用數字鍵選擇:",
|
|
329
367
|
currently_active: "目前活躍的API",
|
|
330
368
|
select_action: "選擇一個動作:",
|
|
331
369
|
no_options: "無可用選項",
|
|
332
370
|
enter_choice: "輸入您的選擇({0},或任意其他鍵返回主選單):",
|
|
333
371
|
arrow_keys_not_available: "方向鍵不可用。輸入選擇編號 (1-{0}):",
|
|
334
|
-
enter_choice_prompt: "[>] 輸入您的選擇 (1-2,或任意其他鍵返回主選單):"
|
|
372
|
+
enter_choice_prompt: "[>] 輸入您的選擇 (1-2,或任意其他鍵返回主選單):",
|
|
373
|
+
action: {
|
|
374
|
+
edit: 'edit',
|
|
375
|
+
remove: 'remove',
|
|
376
|
+
switch: 'switch',
|
|
377
|
+
select: 'select'
|
|
378
|
+
}
|
|
335
379
|
},
|
|
336
380
|
|
|
337
381
|
// 啟動過程
|
|
@@ -572,19 +616,15 @@ module.exports = {
|
|
|
572
616
|
model_upgrade: {
|
|
573
617
|
notification: "模型升級可用:{0} → {1}",
|
|
574
618
|
notification_api: "API:{0}",
|
|
575
|
-
notification_hint: "
|
|
619
|
+
notification_hint: "自動升級:「設定管理」/ 手動升級:「第三方API管理 > 手動升級模型」",
|
|
576
620
|
auto_upgraded: "模型已自動升級:{0} → {1}",
|
|
577
621
|
|
|
578
|
-
settings_title: "模型升級設定",
|
|
579
622
|
current_config: "目前設定",
|
|
580
623
|
auto_upgrade_label: "自動使用最新模型",
|
|
581
624
|
auto_upgrade_on: "開啟",
|
|
582
625
|
auto_upgrade_off: "關閉",
|
|
583
626
|
|
|
584
|
-
menu_toggle_auto_on: "自動升級 [● 開啟]",
|
|
585
|
-
menu_toggle_auto_off: "自動升級 [○ 關閉]",
|
|
586
627
|
menu_manual_upgrade: "手動一鍵升級所有模型",
|
|
587
|
-
menu_back: "返回",
|
|
588
628
|
|
|
589
629
|
manual_title: "模型升級檢查",
|
|
590
630
|
manual_checking: "正在檢查 {0} 個 API 設定...",
|
|
@@ -599,5 +639,49 @@ module.exports = {
|
|
|
599
639
|
manual_complete: "升級完成!",
|
|
600
640
|
manual_stats_upgraded: "已升級:{0} 個",
|
|
601
641
|
manual_stats_skipped: "已跳過:{0} 個({1} 個已是最新,{2} 個無升級資訊)"
|
|
642
|
+
},
|
|
643
|
+
hints: {
|
|
644
|
+
auto_mode_info: '啟動後按 Shift+Tab 可切換到自動執行模式',
|
|
645
|
+
active_api_info: '目前啟用:{0} / {1}',
|
|
646
|
+
no_active_api: '未設定啟用的API,請前往「API管理」新增。',
|
|
647
|
+
direct_mode_desc: '直接啟動模式,使用啟用的API直接啟動',
|
|
648
|
+
direct_mode_api_info: 'API: {0} | 提供商: {1}',
|
|
649
|
+
direct_mode_api_detail: '模型: {0} | 最後使用: {1}',
|
|
650
|
+
direct_mode_change: '啟動模式可在「設定管理」中切換',
|
|
651
|
+
direct_mode_no_active: '直接啟動模式,但目前沒有啟用的API',
|
|
652
|
+
direct_mode_no_active_detail: '已設定 {0} 個API,請在「第三方API管理」中選擇啟用',
|
|
653
|
+
select_mode_desc: '選擇模式,啟動前將從API列表中選擇',
|
|
654
|
+
select_mode_change: '啟動模式可在「設定管理」中切換',
|
|
655
|
+
select_mode_api_count: '已設定 {0} 個API,目前啟用: {1}',
|
|
656
|
+
select_mode_active_none: '無',
|
|
657
|
+
no_api_configured: '未設定第三方API,請先在「第三方API管理」中新增',
|
|
658
|
+
api_management_info: '已設定 {0} 個API,目前啟用: {1}',
|
|
659
|
+
config_summary: '語言: {0} | 啟動模式: {1} | 遙測: {2}',
|
|
660
|
+
edit_password_required: '🔒 Password verification required to edit API configuration',
|
|
661
|
+
remove_password_required: '🔒 Password verification required to remove API',
|
|
662
|
+
export_password_required: '🔒 Password verification required to export configuration',
|
|
663
|
+
import_password_required: '🔒 Password verification required to import configuration',
|
|
664
|
+
config: {
|
|
665
|
+
language: '切換介面顯示語言,目前: {0}',
|
|
666
|
+
auto_upgrade: '自動偵測並升級第三方API的模型版本',
|
|
667
|
+
upgrade_notification: '在主選單頂部顯示模型可升級的通知',
|
|
668
|
+
telemetry: '關閉後啟動時注入 DISABLE_TELEMETRY=1,建議關閉',
|
|
669
|
+
launch_mode: '直接模式: 使用啟用API啟動 / 選擇模式: 啟動前從列表選擇'
|
|
670
|
+
},
|
|
671
|
+
api_select: {
|
|
672
|
+
info: 'API: {0}',
|
|
673
|
+
detail: '提供商: {0} | 模型: {1}',
|
|
674
|
+
usage: '使用次數: {0} | 最後使用: {1}'
|
|
675
|
+
}
|
|
676
|
+
},
|
|
677
|
+
|
|
678
|
+
config: {
|
|
679
|
+
values: {
|
|
680
|
+
on: '開啟',
|
|
681
|
+
off: '關閉',
|
|
682
|
+
direct_mode: '直接模式',
|
|
683
|
+
select_mode: '選擇模式',
|
|
684
|
+
recommended_off: '關閉 (推薦)'
|
|
685
|
+
}
|
|
602
686
|
}
|
|
603
687
|
};
|