Merge branch 'master' into stage/5118-scroll

This commit is contained in:
nesquena-hermes
2026-06-28 14:44:08 -07:00
committed by GitHub
+193 -153
View File
@@ -19114,7 +19114,7 @@ const LOCALES = {
cancelling: 'Anulowanie…',
cancel_failed: 'Anulowanie nie powiodło się: ',
mic_denied: 'Odmowa dostępu do mikrofonu. Sprawdź uprawnienia przeglądarki.',
mic_insecure_origin: 'Voice input needs a secure connection. Open Hermes over HTTPS or from localhost to use the microphone.', // TODO: translate
mic_insecure_origin: 'Wprowadzanie głosowe wymaga bezpiecznego połączenia. Otwórz Hermes przez HTTPS lub z localhost, aby użyć mikrofonu.',
mic_no_speech: 'Nie wykryto mowy. Spróbuj ponownie.',
mic_network: 'Rozpoznawanie mowy jest niedostępne.',
mic_error: 'Błąd wejścia głosowego: ',
@@ -19228,7 +19228,7 @@ const LOCALES = {
pdf_no_pages: 'Plik PDF nie ma stron',
pdf_error: 'Nie udało się wyrenderować podglądu PDF',
pdf_download: 'Pobierz PDF',
pdf_truncated: 'Showing the first {0} of {1} pages — download for the full document',
pdf_truncated: 'Pokazywanie pierwszych {0} z {1} stron — pobierz pełny dokument',
// HTML sandbox preview (#482)
html_loading: 'Ładowanie podglądu HTML…',
html_too_large: 'Plik HTML jest zbyt duży, aby wyświetlić jego podgląd',
@@ -19254,7 +19254,7 @@ const LOCALES = {
approval_btn_deny: 'Odmów',
approval_btn_deny_title: 'Odmów — nie uruchamiaj tego polecenia',
approval_responding: 'Odpowiadanie…',
approval_gateway_unsupported: 'Approvals require a newer gateway. Upgrade the connected Hermes gateway to enable this.',
approval_gateway_unsupported: 'Zatwierdzenia wymagają nowszej bramy. Zaktualizuj połączoną bramę Hermes, aby włączyć tę funkcję.',
approval_gateway_unsupported_label: 'Zatwierdzenia nie są obsługiwane',
clarify_heading: 'Wymagane wyjaśnienie',
clarify_hint: 'Wybierz opcję lub wpisz własną odpowiedź poniżej.',
@@ -19392,16 +19392,16 @@ const LOCALES = {
cmd_steer_delivered: 'Korekta dostarczona — agent zobaczy ją przy następnym wyniku narzędzia',
steer_leftover_queued: 'Korekta dodana do kolejki na następną turę',
busy_steer_fallback: 'Korekta niedostępna — przywrócono szkic',
steer_fail_no_cached_agent: 'No agent cached for this session — try refreshing',
steer_fail_agent_lacks_steer: 'This agent version does not support steer',
steer_fail_session_not_found: 'Session not found — it may have expired',
steer_fail_not_running: 'Agent is not currently running',
steer_fail_stream_dead: 'The agent stream has ended',
steer_fail_steer_error: 'Steer delivery failed — the agent may have finished',
steer_fail_network_error: 'Network error — check your connection',
steer_fail_unknown: 'Steer unavailable',
steer_recovery_retry: 'Retry',
steer_recovery_dismiss: 'Dismiss',
steer_fail_no_cached_agent: 'Brak buforowanego agenta dla tej sesji — spróbuj odświeżyć',
steer_fail_agent_lacks_steer: 'Ta wersja agenta nie obsługuje sterowania (steer)',
steer_fail_session_not_found: 'Nie znaleziono sesji — mogła wygasnąć',
steer_fail_not_running: 'Agent nie jest obecnie uruchomiony',
steer_fail_stream_dead: 'Strumień agenta zakończył się',
steer_fail_steer_error: 'Dostarczenie sterowania nie powiodło się — agent mógł już zakończyć pracę',
steer_fail_network_error: 'Błąd sieci — sprawdź połączenie',
steer_fail_unknown: 'Sterowanie niedostępne',
steer_recovery_retry: 'Spróbuj ponownie',
steer_recovery_dismiss: 'Odrzuć',
busy_interrupt_confirm: 'Przerwano — wysyłanie nowej wiadomości',
settings_label_busy_input_mode: 'Tryb wprowadzania przy zajętości',
settings_desc_busy_input_mode: 'Kontroluje, co dzieje się, gdy wysyłasz wiadomość, podczas gdy agent pracuje. Kolejkowanie czeka; Przerwanie anuluje i zaczyna od nowa; Kierowanie (Steer) wprowadza korektę w środku tury bez przerywania (cofa się do kolejkowania, gdy agent lub strumień jest niedostępny).',
@@ -19559,9 +19559,9 @@ const LOCALES = {
downloading: (name) => `Pobieranie ${name}`,
double_click_rename: 'Kliknij dwukrotnie, aby zmienić nazwę',
symlink_link_to: 'Symlink → {target}',
external_link_open_confirm: 'This symlink points outside the workspace. Open it in a read-only external view for this browser session?',
external_link_read_only: 'This external view is read-only. Create, rename, move, delete, upload, reveal, and editor actions stay disabled here.',
external_link_grant_expired: 'This external view expired. Reopen the escape-target symlink to authorize it again.',
external_link_open_confirm: 'To dowiązanie symboliczne (symlink) wskazuje poza obszar roboczy. Czy chcesz je otworzyć w zewnętrznym widoku tylko do odczytu na czas tej sesji przeglądarki?',
external_link_read_only: 'Ten zewnętrzny widok jest tylko do odczytu. Tworzenie, zmiana nazwy, przenoszenie, usuwanie, przesyłanie i akcje edytora pozostają tutaj wyłączone.',
external_link_grant_expired: 'Ten zewnętrzny widok wygasł. Otwórz ponownie docelowe dowiązanie symboliczne (symlink), aby autoryzować go ponownie.',
session_rename_failed_no_row: 'Nie można rozpocząć zmiany nazwy — nie znaleziono wiersza.',
renamed_to: 'Nazwa zmieniona na ',
rename_failed: 'Zmiana nazwy nie powiodła się: ',
@@ -19706,51 +19706,51 @@ const LOCALES = {
settings_desc_session_endless_scroll: 'Gdy ta opcja jest włączona, starsze wiadomości ładują się automatycznie przy przewijaniu w górę. Gdy jest wyłączona, użyj przycisku wczytywania starszych wiadomości.',
settings_label_auto_scroll_follow: 'Automatycznie podążaj za nową treścią',
settings_desc_auto_scroll_follow: 'Gdy włączone, widok przewija się na dół w miarę napływania nowych tokenów. Gdy wyłączone, sam kontrolujesz pozycję przewijania.',
settings_label_render_user_markdown: 'Render markdown in user messages',
settings_label_show_titlebar_profile: 'Show profile switcher in titlebar', // TODO: translate
settings_desc_show_titlebar_profile: 'When enabled, a profile switcher button appears in the top-left app titlebar so you can change profiles from any tab. Off by default; the composer footer always has a profile switcher regardless of this setting.', // TODO: translate
settings_desc_render_user_markdown: 'When enabled, bold, italic, links, and other markdown in your own messages are rendered. Off by default; fenced code blocks and math always render regardless of this setting.',
settings_label_structured_code: 'JSON/YAML code blocks',
settings_option_structured_code_auto: 'Auto: Tree for long blocks',
settings_option_structured_code_on: 'Tree by default',
settings_option_structured_code_off: 'Raw by default',
settings_label_structured_code_auto_lines: 'Auto threshold lines',
settings_desc_structured_code: 'When Auto is selected, JSON/YAML blocks with at least this many lines open in Tree view. Tree always opens the structured viewer; Raw keeps the syntax-highlighted text. You can still switch Tree/Raw on each block.',
settings_label_render_user_markdown: 'Renderuj markdown w wiadomościach użytkownika',
settings_label_show_titlebar_profile: 'Pokaż przełącznik profili na pasku tytułu',
settings_desc_show_titlebar_profile: 'Gdy ta opcja jest włączona, w lewym górnym rogu paska tytułu aplikacji pojawia się przycisk przełącznika profili, umożliwiający zmianę profilu z dowolnej karty. Domyślnie wyłączone; stopka edytora zawsze zawiera przełącznik profili, niezależnie od tego ustawienia.',
settings_desc_render_user_markdown: 'Gdy opcja jest włączona, tekst pogrubiony, pochylony, linki i inne elementy markdown w Twoich wiadomościach będą renderowane. Domyślnie wyłączone; bloki kodu i zapisy matematyczne są zawsze renderowane niezależnie od tego ustawienia.',
settings_label_structured_code: 'Bloki kodu JSON/YAML',
settings_option_structured_code_auto: 'Automatycznie: Widok drzewa dla długich bloków',
settings_option_structured_code_on: 'Domyślnie widok drzewa',
settings_option_structured_code_off: 'Domyślnie widok źródła',
settings_label_structured_code_auto_lines: 'Próg wierszy dla trybu automatycznego',
settings_desc_structured_code: 'Gdy wybrano tryb automatyczny, bloki JSON/YAML o długości przynajmniej podanej liczby wierszy zostaną otwarte w widoku drzewa. Widok drzewa zawsze otwiera strukturyzowaną przeglądarkę; widok źródła zachowuje podświetlony składniowo tekst. Nadal możesz przełączać tryby dla każdego bloku osobno.',
settings_label_worklog_details_expanded_default: 'Otwieraj szczegóły Worklog automatycznie',
settings_desc_worklog_details_expanded_default: 'Gdy ta opcja jest włączona, nowe szczegóły Worklog zaczynają rozwinięte, dzięki czemu karty narzędzi, Thinking i postępu są widoczne bez dodatkowego kliknięcia. Gdy jest wyłączona, szczegóły Worklog pozostają domyślnie zwinięte. Ręczne decyzje o zwinięciu/rozwinięciu w danej turze mają pierwszeństwo.',
settings_label_chat_activity_display_mode: 'Activity display',
settings_desc_chat_activity_display_mode: 'Compact Worklog groups supporting activity into a quiet summary. Transparent Stream keeps each thinking/tool event as its own chronological expandable row.',
first_token_time: 'Time to first token',
processed_elapsed: _i18nProcessedElapsedEn,
worklog_thinking: 'Thinking',
tool_target_skill_suffix: 'skill',
tool_action_label: _i18nToolActionLabelEn,
tool_worklog_summary: _i18nToolWorklogSummaryEn,
tool_summary_join: _i18nToolSummaryJoinEn,
done: 'Done',
settings_option_compact_worklog: 'Compact Worklog',
settings_option_transparent_stream: 'Transparent Stream',
settings_label_chat_activity_display_mode: 'Wyświetlanie aktywności',
settings_desc_chat_activity_display_mode: 'Kompaktowy dziennik pracy grupuje aktywność wspierającą w dyskretne podsumowanie. Transparentny strumień zachowuje każde zdarzenie myślenia/narzędzia jako osobny chronologiczny wiersz z możliwością rozwinięcia.',
first_token_time: 'Czas do pierwszego tokenu',
processed_elapsed: _i18nProcessedElapsedPl,
worklog_thinking: 'Myślenie',
tool_target_skill_suffix: 'umiejętność',
tool_action_label: _i18nToolActionLabelPl,
tool_worklog_summary: _i18nToolWorklogSummaryPl,
tool_summary_join: _i18nToolSummaryJoinPl,
done: 'Gotowe',
settings_option_compact_worklog: 'Kompaktowy dziennik pracy',
settings_option_transparent_stream: 'Transparentny strumień',
settings_label_tab_visibility: 'Karty paska bocznego',
settings_desc_tab_visibility: 'Wybierz, które karty pojawiają się na pasku bocznym i szynie. Przeciągnij elementy, aby zmienić ich kolejność. Czat i Ustawienia są zawsze widoczne.',
settings_label_composer_controls: 'Chat footer controls',
settings_desc_composer_controls: 'Toggle which controls are shown in the chat footer. Reordering is not supported.',
settings_label_composer_situational_controls: 'Situational footer controls',
settings_desc_composer_situational_controls: 'These controls do not always appear, depending on viewport, mode, or runtime state. You can still toggle them off if needed.',
composer_control_attach: 'Attach',
composer_control_saved_prompts: 'Saved prompts',
composer_control_mic: 'Mic',
composer_control_profile: 'Profile',
composer_control_workspace: 'Workspace',
settings_label_composer_controls: 'Kontrolki stopki czatu',
settings_desc_composer_controls: 'Przełączaj kontrolki wyświetlane w stopce czatu. Zmiana kolejności nie jest obsługiwana.',
settings_label_composer_situational_controls: 'Sytuacyjne kontrolki stopki',
settings_desc_composer_situational_controls: 'Te kontrolki nie zawsze się pojawiają, w zależności od obszaru roboczego, trybu lub stanu środowiska uruchomieniowego. Nadal możesz je wyłączyć, jeśli to konieczne.',
composer_control_attach: 'Załącz',
composer_control_saved_prompts: 'Zapisane prompty',
composer_control_mic: 'Mikrofon',
composer_control_profile: 'Profil',
composer_control_workspace: 'Obszar roboczy',
composer_control_model: 'Model',
composer_control_reasoning: 'Reasoning',
composer_control_context: 'Context',
composer_control_voice_mode: 'Voice mode',
composer_control_reasoning: 'Rozumowanie',
composer_control_context: 'Kontekst',
composer_control_voice_mode: 'Tryb głosowy',
composer_control_yolo: 'YOLO',
composer_control_bg_badge: 'Background badge',
composer_control_mobile_config: 'Mobile config',
composer_control_quota_chip: 'Quota chip',
composer_control_toolsets: 'Toolsets',
composer_control_bg_badge: 'Odznaka w tle',
composer_control_mobile_config: 'Konfiguracja mobilna',
composer_control_quota_chip: 'Limit użycia',
composer_control_toolsets: 'Zestawy narzędzi',
composer_control_status: 'Status',
open_in_browser: 'Otwórz w przeglądarce',
settings_dropdown_conversation: 'Konwersacja',
@@ -19762,25 +19762,25 @@ const LOCALES = {
settings_tab_appearance: 'Wygląd',
settings_tab_preferences: 'Preferencje',
settings_tab_plugins: 'Wtyczki',
settings_tab_extensions: 'Extensions', // TODO: translate
settings_extensions_gallery_tab: 'Gallery',
settings_extensions_installed_tab: 'Installed',
settings_extensions_diagnostics_tab: 'Diagnostics',
settings_extensions_gallery_loading: 'Loading gallery…',
settings_extensions_gallery_empty: 'No extensions found in the registry.',
settings_extensions_gallery_error: 'Failed to load gallery.',
ext_gallery_install: 'Install',
ext_gallery_installing: 'Installing…',
ext_gallery_installed: 'Installed',
ext_gallery_uninstall: 'Uninstall',
ext_gallery_uninstalling: 'Uninstalling…',
ext_gallery_restart_required: 'Restart required',
ext_gallery_permissions_show: 'Permissions',
ext_gallery_permissions_hide: 'Hide permissions',
settings_tab_extensions: 'Rozszerzenia',
settings_extensions_gallery_tab: 'Galeria',
settings_extensions_installed_tab: 'Zainstalowane',
settings_extensions_diagnostics_tab: 'Diagnostyka',
settings_extensions_gallery_loading: 'Ładowanie galerii…',
settings_extensions_gallery_empty: 'Nie znaleziono rozszerzeń w rejestrze.',
settings_extensions_gallery_error: 'Nie udało się załadować galerii.',
ext_gallery_install: 'Zainstaluj',
ext_gallery_installing: 'Instalowanie…',
ext_gallery_installed: 'Zainstalowane',
ext_gallery_uninstall: 'Odinstaluj',
ext_gallery_uninstalling: 'Odinstalowywanie…',
ext_gallery_restart_required: 'Wymagany restart',
ext_gallery_permissions_show: 'Uprawnienia',
ext_gallery_permissions_hide: 'Ukryj uprawnienia',
ext_gallery_permissions_empty: 'Nie zadeklarowano dodatkowych uprawnień.',
ext_gallery_version: 'Version',
ext_gallery_author: 'Author',
ext_gallery_capabilities: 'Capabilities',
ext_gallery_version: 'Wersja',
ext_gallery_author: 'Autor',
ext_gallery_capabilities: 'Możliwości',
ext_gallery_next_step: 'Następny krok',
ext_gallery_after_install: 'Po instalacji',
ext_gallery_local_component_required: 'To rozszerzenie ma komponent lokalny. Po instalacji uruchom wymaganą aplikację lokalną lub sidecar.',
@@ -19791,8 +19791,8 @@ const LOCALES = {
ext_gallery_open_setup_guide: 'Otwórz przewodnik konfiguracji',
ext_gallery_install_restart_required: 'Rozszerzenie zainstalowane. Do zastosowania wymagany jest restart.',
ext_gallery_install_followup: 'Rozszerzenie zainstalowane. Sprawdź kartę, aby zobaczyć kolejne kroki.',
ext_gallery_install_ok: 'Extension installed successfully.',
ext_gallery_uninstall_ok: 'Extension uninstalled.',
ext_gallery_install_ok: 'Rozszerzenie zainstalowane pomyślnie.',
ext_gallery_uninstall_ok: 'Rozszerzenie zostało odinstalowane.',
settings_plugins_title: 'Wtyczki',
plugins_enable_toggle: 'Włącz',
settings_plugins_meta: 'Zobacz zainstalowane wtyczki Hermes oraz rejestrowane przez nie haki cyklu życia. Ten panel jest tylko do odczytu.',
@@ -19837,62 +19837,62 @@ const LOCALES = {
settings_aux_save_failed: 'Nie udało się zapisać modelu pomocniczego',
settings_aux_saved: 'Zaktualizowano modele pomocnicze',
settings_aux_no_changes: 'Brak zmian do zastosowania',
settings_aux_task_vision: 'Vision',
settings_aux_task_vision_desc: 'image/screenshot analysis',
settings_aux_task_compression: 'Compression',
settings_aux_task_compression_desc: 'context summarization',
settings_aux_task_web_extract: 'Web extract',
settings_aux_task_web_extract_desc: 'web page summarization',
settings_aux_task_session_search: 'Session search',
settings_aux_task_session_search_desc: 'past-conversation recall',
settings_aux_task_approval: 'Approval',
settings_aux_task_approval_desc: 'smart command approval',
settings_aux_task_vision: 'Analiza obrazu',
settings_aux_task_vision_desc: 'analiza obrazów/zrzutów ekranu',
settings_aux_task_compression: 'Kompresja',
settings_aux_task_compression_desc: 'streszczanie kontekstu',
settings_aux_task_web_extract: 'Ekstrakcja treści z sieci',
settings_aux_task_web_extract_desc: 'streszczanie stron internetowych',
settings_aux_task_session_search: 'Wyszukiwanie sesji',
settings_aux_task_session_search_desc: 'przywoływanie minionych konwersacji',
settings_aux_task_approval: 'Zatwierdzanie',
settings_aux_task_approval_desc: 'inteligentne zatwierdzanie poleceń',
settings_aux_task_mcp: 'MCP',
settings_aux_task_mcp_desc: 'MCP tool reasoning',
settings_aux_task_title_generation: 'Title generation',
settings_aux_task_title_generation_desc: 'session titles',
settings_aux_task_skills_hub: 'Skills hub',
settings_aux_task_skills_hub_desc: 'skills search/install',
settings_aux_task_curator: 'Curator',
settings_aux_task_curator_desc: 'skill-usage review pass',
settings_aux_task_kanban_decomposer: 'Kanban decomposer',
settings_aux_task_kanban_decomposer_desc: 'task decomposition',
settings_aux_task_profile_describer: 'Profile describer',
settings_aux_task_profile_describer_desc: 'profile summaries',
settings_aux_task_triage_specifier: 'Triage specifier',
settings_aux_task_triage_specifier_desc: 'issue/task triage specs',
settings_main_advanced_button_aria: 'Advanced options for main model',
settings_main_advanced_title: 'Main model options',
settings_main_advanced_subtitle: 'Advanced config for the default chat model.',
settings_main_advanced_saved: 'Main model options saved',
settings_main_advanced_save_failed: 'Failed to save main model options',
settings_main_advanced_service_tier: 'Service tier',
settings_main_advanced_service_tier_desc: 'Optional request setting for OpenAI-family providers.',
settings_main_advanced_service_tier_default: 'Default / off',
settings_main_advanced_service_tier_priority: 'Priority (fast)',
settings_aux_advanced_button_title: 'Advanced options',
settings_aux_advanced_button_aria: 'Advanced options for {task}',
settings_aux_advanced_title: '{task} options',
settings_aux_advanced_subtitle: 'Advanced config for auxiliary.',
settings_aux_advanced_save: 'Save options',
settings_aux_advanced_base_url: 'Base URL',
settings_aux_advanced_base_url_desc: 'Optional provider endpoint override.',
settings_aux_advanced_timeout: 'Timeout seconds',
settings_aux_advanced_timeout_desc: 'Request timeout for this auxiliary task. Blank uses Hermes default.',
settings_aux_advanced_download_timeout: 'Download timeout seconds',
settings_aux_advanced_download_timeout_desc: 'Only relevant for tasks that download media/content, e.g. vision. Blank uses default.',
settings_aux_advanced_max_concurrency: 'Max concurrency',
settings_aux_advanced_max_concurrency_desc: 'Optional per-task concurrency limit. Blank uses default.',
settings_aux_advanced_extra_body: 'Extra body JSON',
settings_aux_advanced_extra_body_desc: 'Optional JSON object merged into the model request body.',
settings_aux_advanced_api_key: 'API key override',
settings_aux_advanced_api_key_set_hint: 'API key is set. Leave blank to keep it, or use clear to remove it.',
settings_aux_advanced_api_key_empty_hint: 'Leave blank to use provider/default credentials.',
settings_aux_advanced_api_key_clear: 'Clear existing API key override',
settings_aux_advanced_extra_body_invalid_json: 'Extra body must be valid JSON',
settings_aux_advanced_extra_body_object_required: 'Extra body must be a JSON object',
settings_aux_advanced_saved: 'Auxiliary options saved',
settings_aux_advanced_save_failed: 'Failed to save auxiliary options',
settings_aux_task_mcp_desc: 'rozumowanie narzędzi MCP',
settings_aux_task_title_generation: 'Generowanie tytułów',
settings_aux_task_title_generation_desc: 'tytuły sesji',
settings_aux_task_skills_hub: 'Centrum umiejętności',
settings_aux_task_skills_hub_desc: 'wyszukiwanie/instalowanie umiejętności',
settings_aux_task_curator: 'Kurator',
settings_aux_task_curator_desc: 'przegląd użycia umiejętności',
settings_aux_task_kanban_decomposer: 'Dekompozytor Kanban',
settings_aux_task_kanban_decomposer_desc: 'dekompozycja zadań',
settings_aux_task_profile_describer: 'Opisywanie profili',
settings_aux_task_profile_describer_desc: 'podsumowania profili',
settings_aux_task_triage_specifier: 'Klasyfikator zadań',
settings_aux_task_triage_specifier_desc: 'specyfikacje klasyfikacji problemów/zadań',
settings_main_advanced_button_aria: 'Zaawansowane opcje dla głównego modelu',
settings_main_advanced_title: 'Opcje głównego modelu',
settings_main_advanced_subtitle: 'Zaawansowana konfiguracja dla domyślnego modelu czatu.',
settings_main_advanced_saved: 'Zapisano opcje głównego modelu',
settings_main_advanced_save_failed: 'Nie udało się zapisać opcji głównego modelu',
settings_main_advanced_service_tier: 'Poziom usługi (service tier)',
settings_main_advanced_service_tier_desc: 'Opcjonalne ustawienie żądania dla dostawców z rodziny OpenAI.',
settings_main_advanced_service_tier_default: 'Domyślny / wyłączony',
settings_main_advanced_service_tier_priority: 'Priorytetowy (szybki)',
settings_aux_advanced_button_title: 'Zaawansowane opcje',
settings_aux_advanced_button_aria: 'Zaawansowane opcje dla {task}',
settings_aux_advanced_title: '{task} — opcje',
settings_aux_advanced_subtitle: 'Zaawansowana konfiguracja dla funkcji pomocniczych.',
settings_aux_advanced_save: 'Zapisz opcje',
settings_aux_advanced_base_url: 'Bazowy adres URL',
settings_aux_advanced_base_url_desc: 'Opcjonalne nadpisanie punktu końcowego dostawcy.',
settings_aux_advanced_timeout: 'Limit czasu w sekundach',
settings_aux_advanced_timeout_desc: 'Limit czasu żądania dla tego zadania pomocniczego. Puste pole oznacza użycie domyślnej wartości Hermes.',
settings_aux_advanced_download_timeout: 'Limit czasu pobierania w sekundach',
settings_aux_advanced_download_timeout_desc: 'Ma zastosowanie tylko do zadań pobierających media/zawartość, np. analizy obrazu. Puste pole oznacza użycie wartości domyślnej.',
settings_aux_advanced_max_concurrency: 'Maksymalna współbieżność',
settings_aux_advanced_max_concurrency_desc: 'Opcjonalny limit współbieżności dla zadania. Puste pole oznacza użycie wartości domyślnej.',
settings_aux_advanced_extra_body: 'Dodatkowa treść (JSON) żądania',
settings_aux_advanced_extra_body_desc: 'Opcjonalny obiekt JSON scalany z treścią żądania do modelu.',
settings_aux_advanced_api_key: 'Nadpisanie klucza API',
settings_aux_advanced_api_key_set_hint: 'Klucz API jest ustawiony. Pozostaw puste, aby go zachować, lub wyczyść, aby go usunąć.',
settings_aux_advanced_api_key_empty_hint: 'Pozostaw puste, aby użyć poświadczeń dostawcy/domyślnych.',
settings_aux_advanced_api_key_clear: 'Wyczyść istniejące nadpisanie klucza API',
settings_aux_advanced_extra_body_invalid_json: 'Dodatkowa treść musi być poprawnym kodem JSON',
settings_aux_advanced_extra_body_object_required: 'Dodatkowa treść musi być obiektem JSON',
settings_aux_advanced_saved: 'Zapisano opcje pomocnicze',
settings_aux_advanced_save_failed: 'Nie udało się zapisać opcji pomocniczych',
settings_label_send_key: 'Klawisz wysyłania',
settings_label_theme: 'Motyw',
settings_label_skin: 'Skórka',
@@ -19975,8 +19975,8 @@ const LOCALES = {
kanban_no_matching_tasks: 'Brak pasujących zadań',
kanban_no_data: 'Brak danych Kanban',
kanban_work_queue_hint: 'To jest kolejka pracy Agenta Hermes. Utwórz zadanie lub dokonaj triażu, przypisz je, przenieś do statusu "Gotowe", a następnie pozwól dyspozytorowi je pobrać.',
kanban_tasks_hidden_by_filters: 'Tasks hidden by filters',
kanban_clear_filters: 'Clear filters',
kanban_tasks_hidden_by_filters: 'Zadania ukryte przez filtry',
kanban_clear_filters: 'Wyczyść filtry',
kanban_unavailable: 'Kanban niedostępny',
kanban_read_only: 'Widok tylko do odczytu',
kanban_empty: 'Puste',
@@ -20010,11 +20010,11 @@ const LOCALES = {
kanban_priority_hint: 'Wyższe liczby są uruchamiane jako pierwsze. Domyślnie 0.',
kanban_title_required: 'Tytuł jest wymagany.',
kanban_new_task: 'Nowe zadanie',
kanban_view_lanes: 'Lanes by profile',
kanban_view_consolidated: 'Consolidated view',
kanban_view_lanes_saved: 'Kanban view: lanes by profile',
kanban_view_consolidated_saved: 'Kanban view: consolidated',
kanban_view_update_failed: 'Failed to update Kanban view: ',
kanban_view_lanes: 'Tory według profili',
kanban_view_consolidated: 'Widok skonsolidowany',
kanban_view_lanes_saved: 'Widok Kanban: tory według profili',
kanban_view_consolidated_saved: 'Widok Kanban: skonsolidowany',
kanban_view_update_failed: 'Nie udało się zaktualizować widoku Kanban: ',
kanban_edit_task: 'Edytuj zadanie',
kanban_status_original_hint: 'Rzeczywisty status: {0}. To okno dialogowe obsługuje wyłącznie edycję dla "Do weryfikacji" / "Do zrobienia" / "Gotowe".',
kanban_run_dispatcher: 'Uruchom dyspozytora',
@@ -20034,17 +20034,17 @@ const LOCALES = {
kanban_dispatch_timed_out: 'przekroczono limit czasu',
kanban_dispatch_crashed: 'awaria',
kanban_add_comment: 'Dodaj komentarz',
kanban_workspace_kind: 'Workspace kind',
kanban_workspace_path: 'Workspace path',
kanban_workspace_path_placeholder: 'Path to workspace',
kanban_workspace_scratch: 'Scratch',
kanban_workspace_kind: 'Rodzaj obszaru roboczego',
kanban_workspace_path: 'Ścieżka obszaru roboczego',
kanban_workspace_path_placeholder: 'Ścieżka do obszaru roboczego',
kanban_workspace_scratch: 'Scratch (tymczasowy)',
kanban_workspace_worktree: 'Worktree',
kanban_workspace_dir: 'Directory',
kanban_workspace_path_required: 'Workspace path is required for non-scratch workspaces.',
kanban_add_dependency: 'Add dependency',
kanban_remove_dependency: 'Remove dependency',
kanban_dependency_placeholder: 'Task ID to link',
kanban_dependency_self: 'A task cannot depend on itself',
kanban_workspace_dir: 'Katalog',
kanban_workspace_path_required: 'Ścieżka do obszaru roboczego jest wymagana dla obszarów innych niż tymczasowe (scratch).',
kanban_add_dependency: 'Dodaj zależność',
kanban_remove_dependency: 'Usuń zależność',
kanban_dependency_placeholder: 'Identyfikator zadania do powiązania',
kanban_dependency_self: 'Zadanie nie może zależeć od samego siebie',
kanban_only_mine: 'Tylko moje',
kanban_bulk_action: 'Działanie zbiorcze',
kanban_nudge_dispatcher: 'Podgląd dyspozytora',
@@ -20076,7 +20076,7 @@ const LOCALES = {
dashboard_loopback_warning: 'Pulpit nawigacyjny na serwerze jest dostępny wyłącznie lokalnie (loopback). Przeglądaj bezpośrednio z serwera lub uruchom go ponownie z flagą --host 0.0.0.0 (niebezpieczne).',
tab_logs: 'Logi',
tab_settings: 'Ustawienia',
close_menu: 'Close menu', // TODO: translate
close_menu: 'Zamknij menu',
new_conversation: 'Nowa konwersacja',
filter_conversations: 'Filtruj konwersacje...',
markdown_table_filter: 'Filtruj tabelę',
@@ -20138,7 +20138,7 @@ const LOCALES = {
insights_model_sessions: 'Sesje',
insights_model_tokens: 'Tokeny',
insights_model_cost: 'Koszt',
insights_model_cache: 'Cache',
insights_model_cache: 'Pamięć podręczna',
insights_cache_hit: 'Współczynnik trafień pamięci podręcznej promptów',
insights_model_share: 'Udział',
insights_no_usage_data: 'Brak danych o zużyciu',
@@ -20214,10 +20214,10 @@ const LOCALES = {
outline_title: 'Zarys',
outline_empty: 'Nie ma jeszcze pytań.',
outline_loading: 'Ładowanie…',
wiki_browse: 'Browse wiki',
wiki_search_placeholder: 'Search pages...',
wiki_no_pages: 'No wiki pages found',
wiki_not_configured: 'Wiki not configured',
wiki_browse: 'Przeglądaj wiki',
wiki_search_placeholder: 'Szukaj stron...',
wiki_no_pages: 'Nie znaleziono stron wiki',
wiki_not_configured: 'Wiki nie jest skonfigurowane',
settings_sidebar_density_compact: 'Kompaktowa',
settings_sidebar_density_detailed: 'Szczegółowa',
settings_desc_sidebar_density: 'Kontroluje, ile metadanych wyświetla lista sesji na lewym pasku bocznym.',
@@ -20495,7 +20495,7 @@ const LOCALES = {
cron_job_updated: 'Zadanie zaktualizowane',
cron_model_label: 'Zastąpienie modelu',
cron_model_hint: 'Zastępuje domyślny model dla tego zadania.',
cron_model_no_agent_hint: 'No-agent jobs run the configured script directly; model is unused.',
cron_model_no_agent_hint: 'Zadania bez agenta uruchamiają skonfigurowany skrypt bezpośrednio; model nie jest używany.',
cron_model_use_default: 'Domyślny (użyj domyślnego profilu/systemu)',
cron_delete_confirm_title: 'Usuń zadanie cron',
cron_delete_confirm_message: 'Tej operacji nie można cofnąć.',
@@ -22518,6 +22518,46 @@ function _i18nToolActionLabelVi(kind, state, target, display, failed) {
function _i18nToolWorklogSummaryVi(kind, state, count) {
return _i18nToolWorklogSummaryFromMap(_I18N_TOOL_SUMMARY_TEXT_VI, kind, state, count);
}
const _I18N_TOOL_ACTION_TEXT_PL = {
shell: { running: 'Uruchamianie', done: 'Uruchomiono', fail: 'uruchomić', fallback: 'polecenie' },
read: { running: 'Odczytywanie', done: 'Odczytano', fail: 'odczytać', fallback: 'plik' },
list: { running: 'Listowanie', done: 'Wylistowano', fail: 'wylistować', fallback: 'plik' },
search: { running: 'Przeszukiwanie', done: 'Przeszukano', fail: 'przeszukać', fallback: 'obszar roboczy' },
web: { running: 'Sprawdzanie', done: 'Sprawdzono', fail: 'sprawdzić', fallback: 'dane internetowe' },
write: { running: 'Zapisywanie', done: 'Zapisano', fail: 'zapisać', fallback: 'plik' },
skill: { running: 'Wczytywanie', done: 'Wczytano', fail: 'wczytać', fallback: 'umiejętność' },
memory: { running: 'Zapisywanie', done: 'Zapisano', fail: 'zapisać', fallback: 'pamięć' },
delegate: { running: 'Delegowanie', done: 'Delegowano', fail: 'delegować', fallback: 'zadanie' },
unknown: { running: 'Uruchamianie', done: 'Uruchomiono', fail: 'uruchomić', fallback: 'narzędzie' },
};
const _I18N_TOOL_SUMMARY_TEXT_PL = {
shell: { running: ['Uruchamianie polecenia', 'Uruchamianie {n} poleceń'], done: ['Uruchomiono polecenie', 'Uruchomiono {n} poleceń'] },
read: { running: ['Odczytywanie pliku', 'Odczytywanie {n} plików'], done: ['Odczytano plik', 'Odczytano {n} plików'] },
list: { running: ['Listowanie pliku', 'Listowanie {n} plików'], done: ['Wylistowano plik', 'Wylistowano {n} plików'] },
search: { running: ['Przeszukiwanie obszaru roboczego', 'Przeszukiwanie {n}-krotne obszaru roboczego'], done: ['Przeszukano obszar roboczy', 'Przeszukano {n}-krotnie obszar roboczy'] },
web: { running: ['Sprawdzanie stron', 'Sprawdzanie {n} stron'], done: ['Sprawdzono strony', 'Sprawdzono {n} stron'] },
write: { running: ['Zapisywanie pliku', 'Zapisywanie {n} plików'], done: ['Zapisano plik', 'Zapisano {n} plików'] },
skill: { running: ['Wczytywanie umiejętności', 'Wczytywanie {n} umiejętności'], done: ['Wczytano umiejętność', 'Wczytano {n} umiejętności'] },
memory: { running: ['Zapisywanie pamięci', 'Zapisywanie {n} wpisów pamięci'], done: ['Zapisano pamięć', 'Zapisano {n} wpisów pamięci'] },
delegate: { running: ['Delegowanie zadania', 'Delegowanie {n} zadań'], done: ['Delegowano zadanie', 'Delegowano {n} zadań'] },
unknown: { running: ['Uruchamianie narzędzia', 'Uruchamianie {n} narzędzi'], done: ['Uruchomiono narzędzie', 'Uruchomiono {n} narzędzi'] },
};
function _i18nProcessedElapsedPl(duration) {
return _i18nProcessedElapsed('Przetworzono', duration);
}
function _i18nToolActionLabelPl(kind, state, target, display, failed) {
const verbs = _I18N_TOOL_ACTION_TEXT_PL[kind] || _I18N_TOOL_ACTION_TEXT_PL.unknown;
const object = target || verbs.fallback || display || 'narzędzie';
if (failed) return `Nie udało się ${verbs.fail || 'uruchomić'} ${object}`;
return `${verbs[state] || verbs.running} ${object}`;
}
function _i18nToolWorklogSummaryPl(kind, state, count) {
return _i18nToolWorklogSummaryFromMap(_I18N_TOOL_SUMMARY_TEXT_PL, kind, state, count);
}
function _i18nToolSummaryJoinPl(parts) {
return Array.isArray(parts) ? parts.filter(Boolean).join(', ') : '';
}
function _i18nToolSummaryJoinVi(parts) {
return Array.isArray(parts) ? parts.filter(Boolean).join(', ') : '';
}