cmux/web/messages/pl.json
Lawrence Chen 84af32c56e
Add cmux omo command for oh-my-openagent integration (#2087)
* Add `cmux omo` command for OpenCode + oh-my-openagent integration

Same pattern as `cmux claude-teams`: creates a tmux shim so
oh-my-openagent's TmuxSessionManager spawns agents as native cmux
splits instead of tmux panes. Sets TMUX/TMUX_PANE env vars, prepends
shim to PATH, and execs into opencode.

Closes https://github.com/manaflow-ai/cmux/issues/2085

* Auto-install oh-my-opencode plugin when running cmux omo

Before launching opencode, cmux omo now:
- Checks if oh-my-opencode is registered in ~/.config/opencode/opencode.json
- If not, creates/updates the config with the plugin entry
- Checks if the npm package is installed in node_modules
- If not, runs bun add (or npm install) to install it
- Then proceeds with tmux shim setup and exec

* Use shadow config dir to avoid modifying user's opencode setup

Instead of writing directly to ~/.config/opencode/opencode.json,
cmux omo now creates a shadow config at ~/.cmuxterm/omo-config/ that
layers oh-my-opencode on top of the user's existing config. Symlinks
node_modules, package.json, bun.lock, and plugin config from the
original dir. Sets OPENCODE_CONFIG_DIR to the shadow directory.

Running plain `opencode` remains unaffected.

* Add Agent Integrations docs section with Claude Code Teams and oh-my-opencode pages

Adds sectioned sidebar navigation to the docs site. The new Agent
Integrations section contains separate pages for cmux claude-teams and
cmux omo, documenting usage, tmux shim mechanics, directory layout,
environment variables, and the shadow config approach. Both pages
include a nightly-only warning. Full English and Japanese translations,
nav item keys added to all 19 locales.

* Remove uppercase from sidebar section headers

* Add more spacing above and below sidebar section headers

* Enable tmux mode in oh-my-opencode config, improve docs

- cmux omo now writes tmux.enabled=true to the shadow oh-my-opencode.json
  config. Without this, oh-my-openagent's TmuxSessionManager won't spawn
  visual panes even though $TMUX is set (the config defaults to false).
- Nightly warnings now link to /nightly instead of generic text.
- Added "What you get" section to oh-my-opencode docs explaining the
  visual pane behavior (auto-layout, idle cleanup, queueing).
- Added tmux.enabled step to first-run and how-it-works sections.

* Add terminal-notifier shim to route oh-my-openagent notifications to cmux

oh-my-openagent sends macOS notifications via terminal-notifier
(args: -title <t> -message <m> [-activate <id>]). The shim in
~/.cmuxterm/omo-bin/terminal-notifier intercepts these calls and
routes them through cmux notify, so notifications appear in cmux's
sidebar panel instead of as raw macOS notifications.

* Add pane geometry to tmux-compat for oh-my-openagent grid planning

oh-my-openagent's TmuxSessionManager needs pane geometry (columns,
rows, position, window dimensions) to decide where to spawn agent
panes. Without this data, agents run headlessly.

Server side:
- pane.list v2 response now includes pixel_frame, cell_size, columns,
  rows per pane, plus container_frame at the top level
- Uses BonsplitController.layoutSnapshot() for pixel geometry and
  ghostty_surface_size() for terminal grid dimensions

CLI side:
- tmuxEnrichContextWithGeometry() computes character-cell positions
  from pixel frames and cell dimensions for tmux format variables
  (pane_width, pane_height, pane_left, pane_top, pane_active,
  window_width, window_height)
- list-panes now resolves pane targets (%uuid) via tmuxResolvePaneTarget
  instead of failing with "Workspace not found"
- display-message enriched with geometry for format strings like
  #{pane_width},#{window_width}
- tmux -V now returns "tmux 3.4" (needed by oh-my-openagent's
  tmux-path-resolver verification)

* Add socket tests for tmux-compat pane geometry

6 tests verifying the geometry enrichment works end-to-end:
- pane.list returns pixel_frame, columns, rows, cell_size, container_frame
- tmux -V returns version string
- list-panes -F renders geometry format variables as integers
- list-panes -t %<uuid> resolves pane targets
- display -p renders pane_width and window_width
- After split, two panes have different positions and halved widths

All 6 pass on macmini (cmux-macmini).

* Handle tmux -V in shim script directly (no socket needed)

oh-my-openagent's tmux-path-resolver runs tmux -V to verify the binary
works. The __tmux-compat handler requires a socket connection, which
may not be established at verification time. Handle -V in the bash
shim directly to avoid the socket dependency.

* Lower default tmux pane min widths for cmux omo

oh-my-openagent defaults: main_pane_min_width=120, agent_pane_min_width=40,
requiring 161+ columns. Most terminal windows are narrower, causing
decideSpawnActions to return canSpawn=false and defer agents forever.

cmux omo now sets: main_pane_min_width=60, agent_pane_min_width=30,
main_pane_size=50, requiring only 91 columns. Also moved tmux -V
handling into the bash shim to avoid needing a socket connection for
the version check.

* Resolve merge conflicts with main (main-vertical layout, focus param)

- Keep upstream main-vertical layout anchoring from #2119
- Keep upstream focus param (v2Bool) instead of no_focus
- Combine with our -d flag handling: -d sets focus=false
- Include customCommands nav item from main

* Implement select-layout equalize and resize-pane absolute width

When oh-my-openagent spawns agent panes, it calls select-layout
main-vertical after each split to redistribute panes evenly, then
resize-pane -x <columns> to set the main pane width. Both were
previously no-ops, causing cascading uneven splits.

Server side:
- Add workspace.equalize_splits v2 API that calls the existing
  TabManager.equalizeSplits (sets all dividers to 0.5)

CLI side:
- select-layout now calls workspace.equalize_splits before tracking
  main-vertical state
- resize-pane -x <columns> without directional flags now computes
  the pixel delta from current to desired width and resizes accordingly

* Fix equalize to use proportional divider positions

The previous equalize set all dividers to 0.5, which in a right-
recursive binary tree (from successive splits) gives 50/25/12.5/6.25%
instead of equal sizes.

New algorithm counts leaf panes on each side of each split and sets
the divider to N_left / (N_left + N_right). For 5 panes in a chain:
1/5, 1/4, 1/3, 1/2, giving each pane exactly 20%.

* Fix select-layout main-vertical to only equalize vertical splits

The proportional equalize was treating the top-level horizontal split
(main vs agent column) the same as vertical splits, setting the main
pane to 1/6 of the window with 5 agents.

For main-vertical layout, only equalize vertical splits (the agent
column), leaving the horizontal main/agent divider untouched. The
subsequent resize-pane -x handles the main pane width.

workspace.equalize_splits now accepts an optional orientation filter
("vertical" or "horizontal") to scope which splits get equalized.

* Re-equalize agent column after kill-pane

* Address PR review comments

- Fix cmux omo --help: remove omo from the help-bypass guard so
  --help shows usage text instead of trying to launch opencode
- Don't overwrite unreadable opencode.json: fail with an error
  instead of silently resetting to empty config
- Drain installer pipes concurrently before waitUntilExit to
  prevent deadlock from full pipe buffers during bun/npm install

---------

Co-authored-by: Lawrence Chen <lawrencecchen@users.noreply.github.com>
2026-03-26 16:07:59 -07:00

670 lines
47 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"meta": {
"title": "cmux — Terminal stworzony do wielozadaniowości",
"description": "Natywny terminal macOS oparty na Ghostty. Działa z Claude Code, Codex, OpenCode, Gemini CLI, Kiro, Aider i dowolnym narzędziem CLI. Pionowe karty, pierścienie powiadomień, podzielone panele i API gniazd.",
"ogDescription": "Natywny terminal macOS dla agentów kodowania AI. Działa z Claude Code, Codex, OpenCode, Gemini CLI, Kiro, Aider i dowolnym narzędziem CLI."
},
"common": {
"downloadForMac": "Pobierz na Mac",
"viewOnGitHub": "Zobacz na GitHub",
"closeMenu": "Zamknij menu",
"openMenu": "Otwórz menu",
"toggleTheme": "Przełącz motyw",
"backToBlog": "Powrót do bloga",
"readTheDocs": "Przeczytaj dokumentację",
"viewChangelog": "Zobacz dziennik zmian"
},
"nav": {
"docs": "Dokumentacja",
"blog": "Blog",
"changelog": "Dziennik zmian",
"community": "Społeczność",
"github": "GitHub"
},
"footer": {
"product": "Produkt",
"resources": "Zasoby",
"legal": "Informacje prawne",
"social": "Media społecznościowe",
"blog": "Blog",
"community": "Społeczność",
"docs": "Dokumentacja",
"changelog": "Dziennik zmian",
"privacy": "Prywatność",
"terms": "Regulamin",
"eula": "EULA",
"github": "GitHub",
"twitter": "X / Twitter",
"discord": "Discord",
"contact": "Kontakt",
"nightly": "Nightly",
"copyright": "© {year} Manaflow",
"language": "Język"
},
"home": {
"taglinePrefix": "Terminal stworzony dla ",
"typingCodingAgents": "agentów kodowania",
"typingMultitasking": "multitaskingu",
"subtitle": "Natywna aplikacja macOS zbudowana na Ghostty. Pionowe karty, pierścienie powiadomień gdy agenci potrzebują uwagi, dzielone panele i socket API do automatyzacji.",
"features": "Funkcje",
"faq": "FAQ",
"communitySection": "Społeczność",
"feature": {
"verticalTabs": "Pionowe karty",
"verticalTabsDesc": ": pasek boczny pokazuje gałąź git, katalog roboczy, porty i tekst powiadomień",
"notificationRings": "Pierścienie powiadomień",
"notificationRingsDesc": ": panele podświetlają się gdy agenci potrzebują uwagi",
"inAppBrowser": "Wbudowana przeglądarka",
"inAppBrowserDesc": ": podziel przeglądarkę obok terminala ze skryptowalnym API",
"splitPanes": "Dzielone panele",
"splitPanesDesc": ": poziome i pionowe podziały w każdej karcie",
"scriptable": "Skryptowalny",
"scriptableDesc": ": CLI i socket API do automatyzacji i skryptów",
"gpuAccelerated": "Akceleracja GPU",
"gpuAcceleratedDesc": ": napędzany przez libghostty dla płynnego renderowania",
"lightweight": "Lekki",
"lightweightDesc": ": natywny Swift + AppKit, bez Electron",
"keyboardShortcuts": "Skróty klawiszowe",
"keyboardShortcutsDesc": ": <link>rozbudowane skróty</link> dla workspace'ów, podziałów, przeglądarki i więcej"
},
"faqGhosttyQ": "Jaki jest związek cmux z Ghostty?",
"faqGhosttyA": "cmux nie jest forkiem Ghostty. Używa <link>libghostty</link> jako biblioteki do renderowania terminala, tak samo jak aplikacje używają WebKit do widoków webowych. Ghostty to samodzielny terminal; cmux to inna aplikacja zbudowana na jego silniku renderowania.",
"faqPlatformQ": "Jakie platformy są obsługiwane?",
"faqPlatformA": "Tylko macOS, na razie. cmux to natywna aplikacja Swift + AppKit.",
"faqAgentsQ": "Z jakimi agentami kodowania działa cmux?",
"faqAgentsA": "Ze wszystkimi. cmux to terminal, więc każdy agent działający w terminalu działa od razu: Claude Code, Codex, OpenCode, Gemini CLI, Kiro, Aider, Goose, Amp, Cline, Cursor Agent i wszystko inne co możesz uruchomić z linii poleceń.",
"faqNotificationsQ": "Jak działają powiadomienia?",
"faqNotificationsA": "Gdy proces potrzebuje uwagi, cmux pokazuje pierścienie powiadomień wokół paneli, odznaki nieprzeczytanych na pasku bocznym, okno powiadomień i powiadomienie na pulpicie macOS. Uruchamiają się automatycznie przez standardowe sekwencje ucieczki terminala (OSC 9/99/777), lub możesz je wywołać za pomocą <cliLink>cmux CLI</cliLink> i <hooksLink>hooków Claude Code</hooksLink>.",
"faqShortcutsQ": "Czy mogę dostosować skróty klawiszowe?",
"faqShortcutsA": "Przypisania klawiszy terminala są odczytywane z pliku konfiguracyjnego Ghostty (<configPath>~/.config/ghostty/config</configPath>). Skróty specyficzne dla cmux (workspace'y, podziały, przeglądarka, powiadomienia) można dostosować w Ustawieniach. Zobacz <link>domyślne skróty</link> po pełną listę.",
"faqTmuxQ": "Jak wypada w porównaniu z tmux?",
"faqTmuxA": "tmux to multiplekser terminala działający w dowolnym terminalu. cmux to natywna aplikacja macOS z GUI: pionowe karty, dzielone panele, wbudowana przeglądarka i socket API są wbudowane. Bez plików konfiguracyjnych i klawiszy prefiksu.",
"faqFreeQ": "Czy cmux jest darmowy?",
"faqFreeA": "Tak, cmux jest darmowy. Kod źródłowy jest dostępny na <link>GitHub</link>."
},
"community": {
"title": "Społeczność",
"description": "Połącz się z innymi użytkownikami cmux i zespołem za nim stojącym.",
"discord": "Discord",
"discordAction": "Dołącz do naszego Discorda",
"discordDesc": "Rozmawiaj ze społecznością, uzyskaj pomoc i podziel się opinią",
"githubAction": "Zobacz na GitHub",
"githubDesc": "Daj gwiazdkę, zgłaszaj problemy i przyczyniaj się do rozwoju",
"twitter": "Twitter",
"twitterAction": "Obserwuj na X",
"twitterDesc": "Aktualizacje, ogłoszenia i porady",
"youtube": "YouTube",
"youtubeAction": "Subskrybuj",
"youtubeDesc": "Dema, poradniki i przewodniki",
"linkedin": "LinkedIn",
"linkedinAction": "Obserwuj nas",
"linkedinDesc": "Wiadomości firmowe i aktualizacje techniczne",
"metaTitle": "Społeczność — cmux",
"metaDescription": "Dołącz do społeczności cmux na Discordzie, Twitterze, GitHubie i nie tylko"
},
"blog": {
"title": "Blog",
"layoutTitle": "cmux blog",
"metaTitle": "Blog",
"metaDescription": "Wiadomości i aktualizacje od zespołu cmux",
"description": "Wiadomości i aktualizacje od zespołu cmux",
"posts": {
"cmdShiftU": {
"title": "Cmd+Shift+U",
"summary": "Jak Cmd+Shift+U nawiguje między zakończonymi agentami w workspace'ach w cmux.",
"date": "4 marca 2026",
"p1": "Moją ulubioną funkcją cmux jest Cmd+Shift+U. Mam teraz otwartych 17 workspace'ów, każdy z uruchomionym agentem. Kiedyś przeklikiwałem się przez karty i panel powiadomień, żeby sprawdzić co się zakończyło. Klawiatura jest szybsza.",
"p2": "Cmd+Shift+U przeskakuje do najnowszego nieprzeczytanego <link>powiadomienia</link>. W praktyce oznacza to ostatniego agenta który skończył. Przełącza na właściwy workspace, fokusuje dokładny panel, miga nim żebyś widział gdzie patrzeć i oznacza go jako przeczytany. Jeśli powiadomienie przyszło z innego okna, to okno wysuwa się na przód."
},
"zenOfCmux": {
"title": "The Zen of cmux",
"summary": "cmux to prymityw, nie rozwiązanie. Daje ci komponowalne elementy, a Twój workflow zależy od Ciebie.",
"date": "27 lutego 2026",
"p1": "cmux nie narzuca sposobu używania narzędzi. To terminal i przeglądarka z CLI, a reszta zależy od Ciebie.",
"p2": "cmux to prymityw, nie rozwiązanie. Daje Ci terminal, przeglądarkę, powiadomienia, workspace'y, podziały, karty i CLI do kontroli tego wszystkiego. cmux nie wymusza żadnego konkretnego sposobu używania agentów kodowania. To co zbudujesz z prymitywów jest Twoje.",
"p3": "Najlepsi programiści zawsze budowali własne narzędzia. Nikt jeszcze nie znalazł najlepszego sposobu pracy z agentami, a zespoły budujące zamknięte produkty na pewno też nie. Programiści najbliżej swoich baz kodu odkryją to pierwsi.",
"p4": "Daj milionowi programistów komponowalne prymitywy, a wspólnie znajdą najefektywniejsze workflow'y szybciej niż jakikolwiek zespół produktowy mógłby zaprojektować odgórnie."
},
"showHnLaunch": {
"title": "Premiera cmux na Show HN",
"summary": "cmux osiągnął #2 na Hacker News, został udostępniony przez Mitchella Hashimoto i stał się viralowy w Japonii.",
"date": "21 lutego 2026",
"intro": "Opublikowaliśmy cmux na <link>Show HN</link> 19 lutego:",
"blockquote1": "Uruchamiam wiele sesji Claude Code i Codex równolegle. Używałem Ghostty z wieloma dzielonymi panelami i polegałem na natywnych powiadomieniach macOS, żeby wiedzieć kiedy agent mnie potrzebuje. Ale treść powiadomień Claude Code to zawsze tylko \"Claude is waiting for your input\" bez kontekstu, a przy wystarczającej liczbie kart nie mogłem nawet przeczytać tytułów.",
"blockquote2": "Próbowałem kilku orkiestratorów kodowania, ale większość to były aplikacje Electron/Tauri i irytowała mnie wydajność. Wolę też po prostu terminal, bo GUI-orkiestratory zamykają cię w swoim workflow. Więc zbudowałem cmux jako natywną aplikację macOS w Swift/AppKit. Używa libghostty do renderowania terminala i czyta Twoją istniejącą konfigurację Ghostty dla motywów, czcionek, kolorów i więcej.",
"blockquote3": "Główne dodatki to pasek boczny i system powiadomień. Pasek boczny ma pionowe karty pokazujące gałąź git, katalog roboczy, nasłuchujące porty i ostatni tekst powiadomienia dla każdego workspace'a. System powiadomień przechwytuje sekwencje terminala (OSC 9/99/777) i ma CLI (cmux notify) które możesz podpiąć do hooków agentów dla Claude Code, OpenCode itp. Gdy agent czeka, jego panel dostaje niebieski pierścień a karta podświetla się na pasku bocznym, więc widzę który potrzebuje mnie na przestrzeni podziałów i kart. Cmd+Shift+U przeskakuje do najnowszego nieprzeczytanego.",
"blockquote4": "Wbudowana przeglądarka ma skryptowalne API. Agenci mogą zrobić snapshot drzewa dostępności, pobrać referencje elementów, klikać, wypełniać formularze, ewaluować JS i czytać logi konsoli. Możesz podzielić panel przeglądarki obok terminala i pozwolić Claude Code bezpośrednio wchodzić w interakcję z Twoim serwerem deweloperskim.",
"blockquote5": "Wszystko jest skryptowalne przez CLI i socket API: tworzenie workspace'ów/kart, dzielenie paneli, wysyłanie naciśnięć klawiszy, otwieranie URL-i w przeglądarce.",
"hitNumber2": "W szczycie osiągnął #2 na Hacker News. Mitchell Hashimoto udostępnił go:",
"favoriteComment": "Mój ulubiony komentarz z <link>wątku HN</link>:",
"viralJapan": "Niespodziewanie cmux stał się viralowy w Japonii:",
"translation": "Tłumaczenie: \"To wygląda dobrze. Aplikacja terminalowa oparta na Ghostty, zaprojektowana żebyś się nie zgubił uruchamiając wiele CLI jak Claude Code równolegle. Panel czekający na input dostaje niebieską ramkę i ma własny system powiadomień.\"",
"viralChina": "I pół-viralowy w Chinach:",
"extensions": "Kolejną ekscytującą rzeczą było obserwowanie jak ludzie budują na bazie cmux CLI. sasha zbudował rozszerzenie pi-cmux które pokazuje informacje o modelu, zużycie tokenów i stan agenta na pasku bocznym:",
"scriptable": "Wszystko w cmux jest skryptowalne przez CLI: tworzenie workspace'ów, wysyłanie naciśnięć klawiszy, kontrola przeglądarki, odczytywanie powiadomień. Częścią filozofii cmux jest bycie programowalnym i komponowalnym, żeby ludzie mogli dostosować sposób pracy z agentami kodowania. Stan wiedzy o agentach kodowania zmienia się szybko, i nie chcesz być zamknięty w nieelastycznym GUI-orkiestratorze który nie nadąża.",
"cta": "Jeśli uruchamiasz wielu agentów kodowania, <link>wypróbuj cmux</link>."
},
"introducingCmux": {
"title": "Przedstawiamy cmux",
"summary": "Natywny terminal macOS zbudowany na Ghostty, zaprojektowany do uruchamiania wielu agentów kodowania AI obok siebie.",
"date": "12 lutego 2026",
"p1": "cmux to natywna aplikacja terminalowa macOS zbudowana na Ghostty, zaprojektowana od podstaw dla programistów uruchamiających wielu agentów kodowania AI jednocześnie.",
"whyTitle": "Dlaczego cmux?",
"whyP": "Nowoczesne workflow'y programistyczne często wymagają uruchamiania kilku agentów naraz. Claude Code, Codex i inne narzędzia, każde w swoim terminalu. Śledzenie które potrzebują uwagi i szybkie przełączanie między nimi to problem który cmux rozwiązuje.",
"featuresTitle": "Kluczowe funkcje",
"getStartedTitle": "Rozpocznij",
"getStartedP": "Zainstaluj cmux przez Homebrew lub pobierz DMG z <link>przewodnika szybkiego startu</link>.",
"featureVerticalTabsLabel": "Pionowe karty",
"featureVerticalTabsDesc": "zobacz wszystkie terminale na pierwszy rzut oka w pasku bocznym",
"featureNotificationsLabel": "Pierścienie powiadomień",
"featureNotificationsDesc": "karty migają gdy agent potrzebuje Twojego wejścia",
"featureSplitPanesLabel": "Dzielone panele",
"featureSplitPanesDesc": "poziome i pionowe podziały w każdym workspace",
"featureSocketApiLabel": "Socket API",
"featureSocketApiDesc": "programowa kontrola do tworzenia kart i wysyłania danych wejściowych",
"featureGpuLabel": "Akceleracja GPU",
"featureGpuDesc": "napędzany przez libghostty dla płynnego renderowania"
}
},
"zenOfCmux": {
"metaTitle": "Zen cmux",
"metaDescription": "cmux to prymityw, nie rozwiązanie. Daje ci komponowalne elementy, a przepływ pracy zależy od ciebie."
},
"cmdShiftU": {
"metaTitle": "Cmd+Shift+U",
"metaDescription": "Nowy skrót klawiszowy, który zmienia sposób interakcji z cmux."
},
"showHnLaunch": {
"metaTitle": "Premiera cmux na Show HN",
"metaDescription": "Historia premiery cmux na Hacker News."
},
"introducingCmux": {
"metaTitle": "Przedstawiamy cmux",
"metaDescription": "Dlaczego zbudowaliśmy cmux, nowy terminal dla macOS."
}
},
"docs": {
"layoutTitle": "cmux docs",
"gettingStarted": {
"title": "Szybki start",
"metaDescription": "Zainstaluj cmux, natywny terminal macOS dla agentów kodowania AI. Homebrew, pobieranie DMG, konfiguracja CLI i automatyczne aktualizacje przez Sparkle.",
"intro": "cmux to lekki, natywny terminal macOS zbudowany na Ghostty do zarządzania wieloma agentami kodowania AI. Oferuje pionowe karty, panel powiadomień i API kontroli opartą na socketach.",
"install": "Instalacja",
"dmgRecommended": "DMG (zalecane)",
"dmgDesc": "Otwórz plik .dmg i przeciągnij cmux do folderu Aplikacje. cmux aktualizuje się automatycznie przez Sparkle, więc pobierasz tylko raz.",
"homebrew": "Homebrew",
"updateLater": "Aby zaktualizować później:",
"firstLaunchCallout": "Przy pierwszym uruchomieniu macOS może poprosić o potwierdzenie otwarcia aplikacji od zidentyfikowanego dewelopera. Kliknij <strong>Otwórz</strong> aby kontynuować.",
"verifyTitle": "Weryfikacja instalacji",
"verifyDesc": "Otwórz cmux i powinieneś zobaczyć:",
"verifyItem1": "Okno terminala z pionowym paskiem bocznym kart po lewej",
"verifyItem2": "Jeden początkowy workspace już otwarty",
"verifyItem3": "Terminal napędzany przez Ghostty gotowy do wprowadzania danych",
"cliSetup": "Konfiguracja CLI",
"cliDesc": "cmux zawiera narzędzie wiersza poleceń do automatyzacji. W terminalach cmux działa automatycznie. Aby używać CLI spoza cmux, utwórz dowiązanie symboliczne:",
"cliThen": "Następnie możesz uruchamiać polecenia takie jak:",
"autoUpdates": "Automatyczne aktualizacje",
"autoUpdatesDesc": "cmux automatycznie sprawdza aktualizacje przez Sparkle. Gdy aktualizacja jest dostępna, zobaczysz wskaźnik aktualizacji na pasku tytułu. Możesz też sprawdzić ręcznie przez cmux > Sprawdź aktualizacje w pasku menu.",
"sessionRestore": "Przywracanie sesji (obecne zachowanie)",
"sessionRestoreDesc": "Po ponownym uruchomieniu cmux przywraca tylko układ i metadane:",
"sessionItem1": "Układ okien, workspace'ów i paneli",
"sessionItem2": "Katalogi robocze",
"sessionItem3": "Scrollback terminala (najlepszy wysiłek)",
"sessionItem4": "URL przeglądarki i historia nawigacji",
"sessionCallout": "cmux jeszcze nie przywraca stanu żywych procesów. Aktywne sesje terminalowe takie jak Claude Code, tmux i vim nie są wznawiane po restarcie aplikacji.",
"requirements": "Wymagania",
"reqItem1": "macOS 14.0 lub nowszy",
"reqItem2": "Apple Silicon lub Intel Mac",
"metaTitle": "Rozpoczęcie"
},
"concepts": {
"title": "Koncepty",
"metaDescription": "Jak cmux organizuje terminale: okna, workspace'y, panele i surface'y. Hierarchia za paskiem bocznym, podziałami i socket API.",
"intro": "cmux organizuje Twoje terminale w czteropoziomowej hierarchii. Zrozumienie tych poziomów pomaga przy korzystaniu z socket API, CLI i skrótów klawiszowych.",
"hierarchy": "Hierarchia",
"windowTitle": "Okno",
"windowDesc": "Okno macOS. Otwórz wiele okien za pomocą {shortcut}. Każde okno ma własny pasek boczny z niezależnymi workspace'ami.",
"workspaceTitle": "Workspace",
"workspaceDesc": "Wpis w pasku bocznym. Każdy workspace zawiera jeden lub więcej dzielonych paneli. Workspace'y to elementy widoczne na liście w lewym pasku bocznym.",
"workspaceNote": "W interfejsie i skrótach klawiszowych workspace'y często nazywane są \"kartami\", ponieważ zachowują się jak karty w pasku bocznym. Socket API i zmienne środowiskowe używają terminu \"workspace\".",
"contextHeader": "Kontekst",
"termUsedHeader": "Używany termin",
"sidebarUI": "Interfejs paska bocznego",
"tab": "Karta",
"keyboardShortcuts": "Skróty klawiszowe",
"workspaceOrTab": "Workspace lub karta",
"socketAPI": "Socket API",
"environmentVariable": "Zmienna środowiskowa",
"workspaceShortcuts": "Skróty: {new} (nowy), {jump} (przejdź), {close} (zamknij), {prevNext} (poprzedni/następny)",
"paneTitle": "Panel",
"paneDesc": "Podzielony region w workspace. Tworzony przez podział za pomocą {right} (prawo) lub {down} (dół). Nawiguj między panelami za pomocą {nav} + klawisze strzałek.",
"paneNote": "Każdy panel może zawierać wiele surface'ów (karty wewnątrz panelu).",
"surfaceTitle": "Surface",
"surfaceDesc": "Karta wewnątrz panelu. Każdy panel ma własny pasek kart i może zawierać wiele surface'ów. Tworzony za pomocą {new}, nawigacja za pomocą {prev} / {next} lub {jump}.",
"surfaceNote": "Surface'y to indywidualne sesje terminala lub przeglądarki z którymi wchodzisz w interakcję. Każdy surface ma własną zmienną środowiskową CMUX_SURFACE_ID.",
"panelTitle": "Panel",
"panelDesc": "Zawartość wewnątrz surface'a. Obecnie dwa typy:",
"panelTerminal": "Terminal: sesja terminala Ghostty",
"panelBrowser": "Przeglądarka: osadzony widok webowy",
"panelNote": "Panel to głównie wewnętrzny koncept. W socket API i CLI wchodzisz w interakcję z surface'ami, a nie bezpośrednio z panelami.",
"visualExample": "Przykład wizualny",
"visualExampleDesc": "W tym przykładzie:",
"visualItem1": "Okno zawiera pasek boczny z trzema workspace'ami (dev, server, logs)",
"visualItem2": "Workspace \"dev\" jest wybrany, pokazując dwa panele obok siebie",
"visualItem3": "Panel 1 ma dwa surface'y ([S1] i [S2] w pasku kart), z aktywnym S1",
"visualItem4": "Panel 2 ma jeden surface",
"visualItem5": "Każdy surface zawiera panel (w tym przypadku terminal)",
"summary": "Podsumowanie",
"levelHeader": "Poziom",
"whatItIsHeader": "Czym jest",
"createdByHeader": "Tworzony przez",
"identifiedByHeader": "Identyfikowany przez",
"macosWindow": "Okno macOS",
"sidebarEntry": "Wpis w pasku bocznym",
"splitRegion": "Podzielony region",
"tabWithinPane": "Karta wewnątrz panelu",
"terminalOrBrowser": "Terminal lub przeglądarka",
"automatic": "Automatycznie",
"paneIdSocket": "ID panelu (socket API)",
"panelIdInternal": "ID panelu (wewnętrzny)",
"metaTitle": "Koncepcje"
},
"configuration": {
"title": "Konfiguracja",
"metaDescription": "Konfiguruj cmux przez pliki konfiguracyjne Ghostty. Czcionka, motyw, kolory, styl dzielonych paneli, scrollback i ustawienia aplikacji dla trybu automatyzacji.",
"intro": "cmux odczytuje konfigurację z plików konfiguracyjnych Ghostty, dając Ci znajome opcje jeśli przechodzisz z Ghostty.",
"configLocations": "Lokalizacje plików konfiguracyjnych",
"configLocationsDesc": "cmux szuka konfiguracji w tych lokalizacjach (w kolejności):",
"createConfig": "Utwórz plik konfiguracyjny jeśli nie istnieje:",
"appearance": "Wygląd",
"font": "Czcionka",
"colors": "Kolory",
"splitPanes": "Dzielone panele",
"behavior": "Zachowanie",
"scrollback": "Scrollback",
"workingDirectory": "Katalog roboczy",
"appSettings": "Ustawienia aplikacji",
"appSettingsDesc": "Ustawienia w aplikacji są dostępne przez cmux > Ustawienia ({shortcut}):",
"themeMode": "Tryb motywu",
"themeSystem": "Systemowy: podążaj za wyglądem macOS",
"themeLight": "Jasny: zawsze jasny tryb",
"themeDark": "Ciemny: zawsze ciemny tryb",
"automationMode": "Tryb automatyzacji",
"automationModeDesc": "Poziom dostępu do gniazda kontrolnego:",
"automationOff": "Wyłączony: brak kontroli przez socket (najbezpieczniejszy)",
"automationCmux": "Tylko procesy cmux: zezwalaj tylko procesom uruchomionym w terminalach cmux na połączenie",
"automationAll": "allowAll: zezwalaj dowolnemu lokalnemu procesowi na połączenie (CMUX_SOCKET_MODE=allowAll, tylko nadpisanie zmiennej środowiskowej)",
"automationCallout": "Na współdzielonych maszynach rozważ użycie trybu \"Wyłączony\" lub \"Tylko procesy cmux\".",
"browserLinkBehavior": "Zachowanie linków w przeglądarce",
"browserLinkDesc": "W Ustawieniach > Przeglądarka cmux udostępnia dwie listy hostów o różnych zastosowaniach:",
"browserHostsEmbed": "Hosty do otwarcia we wbudowanej przeglądarce: dotyczy linków klikniętych z wyjścia terminala. Hosty na tej liście otwierają się w cmux; pozostałe hosty otwierają się w domyślnej przeglądarce. Obsługuje jeden host lub wildcard na linię (na przykład: example.com, *.internal.example).",
"browserHostsHttp": "Hosty HTTP dozwolone we wbudowanej przeglądarce: dotyczy tylko URL-i HTTP (nie-HTTPS). Hosty na tej liście mogą otwierać się w cmux bez monitu ostrzegawczego. Domyślnie obejmuje localhost, 127.0.0.1, ::1, 0.0.0.0 i *.localtest.me.",
"exampleConfig": "Przykładowa konfiguracja",
"metaTitle": "Konfiguracja"
},
"customCommands": {
"title": "Niestandardowe polecenia",
"metaTitle": "Niestandardowe polecenia",
"metaDescription": "Definiuj niestandardowe polecenia i układy workspace w cmux.json. Konfiguracja per-projekt i globalna z obserwacją plików na żywo.",
"intro": "Definiuj niestandardowe polecenia i układy workspace, dodając plik cmux.json do katalogu głównego projektu lub ~/.config/cmux/. Polecenia pojawiają się w palecie poleceń.",
"fileLocations": "Lokalizacje plików",
"fileLocationsDesc": "cmux szuka konfiguracji w dwóch miejscach:",
"localConfig": "Per projekt:",
"localConfigDesc": "znajduje się w katalogu projektu, ma pierwszeństwo",
"globalConfig": "Globalnie:",
"globalConfigDesc": "stosuje się do wszystkich projektów, uzupełnia polecenia niezdefiniowane lokalnie",
"precedenceNote": "Lokalne polecenia zastępują globalne polecenia o tej samej nazwie.",
"liveReload": "Zmiany są pobierane automatycznie — nie trzeba restartować.",
"schema": "Schemat",
"schemaDesc": "Plik cmux.json zawiera tablicę commands. Każde polecenie to albo proste polecenie shell, albo pełna definicja workspace:",
"simpleCommands": "Proste polecenia",
"simpleCommandsDesc": "Proste polecenie uruchamia polecenie shell w aktualnie sfokusowanym terminalu:",
"simpleCommandFields": "Pola",
"fieldName": "Wyświetlane w palecie poleceń (wymagane)",
"fieldDescription": "Opcjonalny opis",
"fieldKeywords": "Dodatkowe terminy wyszukiwania dla palety poleceń",
"fieldCommand": "Polecenie shell do uruchomienia w sfokusowanym terminalu",
"fieldConfirm": "Pokaż okno dialogowe potwierdzenia przed uruchomieniem",
"simpleCommandCwdNote": "Proste polecenia są uruchamiane w bieżącym katalogu roboczym aktywnego terminala. Jeśli polecenie wymaga ścieżek względnych do projektu, dodaj prefiks",
"simpleCommandCwdRepoRoot": "aby uruchomić z katalogu głównego repozytorium, lub",
"simpleCommandCwdCustomPath": "dla dowolnego konkretnego katalogu.",
"workspaceCommands": "Polecenia workspace",
"workspaceCommandsDesc": "Polecenie workspace tworzy nowy workspace z niestandardowym układem podziałów, terminali i paneli przeglądarki:",
"workspaceFields": "Pola workspace",
"wsFieldName": "Nazwa zakładki workspace (domyślnie nazwa polecenia)",
"wsFieldCwd": "Katalog roboczy workspace",
"wsFieldColor": "Kolor zakładki workspace",
"wsFieldLayout": "Drzewo układu definiujące podziały i panele",
"restartBehavior": "Zachowanie przy restarcie",
"restartBehaviorDesc": "Kontroluje co się dzieje, gdy workspace o tej samej nazwie już istnieje:",
"restartIgnore": "Przełącz do istniejącego workspace (domyślnie)",
"restartRecreate": "Zamknij i odtwórz bez pytania",
"restartConfirm": "Zapytaj użytkownika przed odtworzeniem",
"layoutTree": "Drzewo układu",
"layoutTreeDesc": "Drzewo układu definiuje jak panele są rozmieszczone za pomocą rekurencyjnych węzłów podziału:",
"splitNode": "Węzeł podziału",
"splitNodeDesc": "Dzieli przestrzeń na dwoje dzieci:",
"or": "lub",
"splitPosition": "Pozycja dzielnika od 0.1 do 0.9 (domyślnie 0.5)",
"splitChildren": "Dokładnie dwa węzły podrzędne (podział lub panel)",
"paneNode": "Węzeł panelu",
"paneNodeDesc": "Węzeł liścia zawierający jedną lub więcej powierzchni (zakładki wewnątrz panelu).",
"surfaceDefinition": "Definicja powierzchni",
"surfaceDefinitionDesc": "Każda powierzchnia w panelu może być terminalem lub przeglądarką:",
"surfaceName": "Niestandardowy tytuł zakładki",
"surfaceCommand": "Polecenie shell do automatycznego uruchomienia przy tworzeniu (tylko terminal)",
"surfaceCwd": "Katalog roboczy dla tej powierzchni",
"surfaceEnv": "Zmienne środowiskowe jako pary klucz-wartość",
"surfaceUrl": "URL do otwarcia (tylko przeglądarka)",
"surfaceFocus": "Sfokusuj tę powierzchnię po utworzeniu",
"cwdResolution": "Rozwiązanie katalogu roboczego",
"omitted": "pominięty",
"cwdRelative": "katalog roboczy workspace",
"cwdSubdir": "względem katalogu roboczego workspace",
"cwdHome": "rozwinięty do katalogu domowego",
"absolutePath": "Ścieżka bezwzględna",
"cwdAbsolute": "używana bez zmian",
"fullExample": "Pełny przykład"
},
"keyboardShortcuts": {
"title": "Skróty klawiszowe",
"description": "Wszystkie skróty klawiszowe dostępne w cmux, pogrupowane według kategorii.",
"metaDescription": "Wszystkie skróty klawiszowe cmux dla workspace'ów, surface'ów, dzielonych paneli, przeglądarki, powiadomień, wyszukiwania i zarządzania oknami na macOS.",
"searchPlaceholder": "Szukaj skrótów...",
"searchLabel": "Szukaj skrótów klawiszowych",
"noResults": "Nie znaleziono skrótów",
"noResultsHint": "Spróbuj innego wyszukiwania",
"cat": {
"workspaces": "Workspace'y",
"workspacesBlurb": "Workspace'y znajdują się w pasku bocznym. Każdy workspace ma własny zestaw paneli i surface'ów.",
"surfaces": "Surface'y",
"surfacesBlurb": "Surface'y to karty wewnątrz panelu.",
"splitPanes": "Dzielone panele",
"browser": "Przeglądarka",
"notifications": "Powiadomienia",
"find": "Znajdź",
"terminal": "Terminal",
"window": "Okno"
},
"sc": {
"ws-new": "Nowy workspace",
"ws-prev": "Poprzedni workspace",
"ws-next": "Następny workspace",
"ws-jump-1-8": "Przejdź do workspace 18",
"ws-jump-last": "Przejdź do ostatniego workspace",
"ws-close": "Zamknij workspace",
"ws-rename": "Zmień nazwę workspace",
"sf-new": "Nowy surface",
"sf-prev-1": "Poprzedni surface",
"sf-prev-2": "Poprzedni surface",
"sf-jump-1-8": "Przejdź do surface 18",
"sf-jump-last": "Przejdź do ostatniego surface",
"sf-close": "Zamknij surface",
"sp-right": "Podziel w prawo",
"sp-down": "Podziel w dół",
"sp-focus": "Fokus na panelu kierunkowo",
"sp-browser-right": "Podziel przeglądarkę w prawo",
"sp-browser-down": "Podziel przeglądarkę w dół",
"br-open": "Otwórz surface przeglądarki",
"br-addr": "Fokus na pasku adresu",
"br-forward": "Do przodu",
"br-reload": "Odśwież stronę",
"br-devtools": "Otwórz narzędzia deweloperskie",
"nt-panel": "Pokaż panel powiadomień",
"nt-latest": "Przejdź do najnowszego nieprzeczytanego",
"nt-flash": "Wyzwól błysk",
"fd-find": "Znajdź",
"fd-next-prev": "Znajdź następny / poprzedni",
"fd-hide": "Ukryj pasek wyszukiwania",
"fd-selection": "Użyj zaznaczenia do wyszukiwania",
"tm-clear": "Wyczyść historię przewijania",
"tm-copy": "Kopiuj (z zaznaczeniem)",
"tm-paste": "Wklej",
"tm-font": "Zwiększ / zmniejsz rozmiar czcionki",
"tm-reset": "Zresetuj rozmiar czcionki",
"wn-new": "Nowe okno",
"wn-settings": "Ustawienia",
"wn-reload": "Przeładuj konfigurację",
"wn-quit": "Zakończ"
},
"metaTitle": "Skróty klawiszowe"
},
"api": {
"title": "Dokumentacja API",
"metaDescription": "Dokumentacja cmux CLI i Unix socket API. Zarządzanie workspace'ami, dzielone panele, sterowanie wejściem, powiadomienia, metadane paska bocznego, zmienne środowiskowe i metody wykrywania.",
"intro": "cmux zapewnia zarówno narzędzie CLI jak i Unix socket do programowej kontroli. Każde polecenie jest dostępne przez oba interfejsy.",
"socket": "Socket",
"buildHeader": "Build",
"pathHeader": "Ścieżka",
"release": "Release",
"debug": "Debug",
"taggedDebug": "Tagowany build debugowy",
"socketOverride": "Nadpisz zmienną środowiskową CMUX_SOCKET_PATH. Wyślij jedno żądanie JSON zakończone nową linią na wywołanie:",
"socketCallout": "Żądania JSON na socket muszą używać method i params. Starsze payloady JSON v1 takie jak <legacy>'{'\"command\":\"...\"'}'</legacy> nie są obsługiwane.",
"accessModes": "Tryby dostępu",
"modeHeader": "Tryb",
"descriptionHeader": "Opis",
"howToEnableHeader": "Jak włączyć",
"offMode": "Socket wyłączony",
"offEnable": "Interfejs ustawień lub CMUX_SOCKET_MODE=off",
"cmuxOnlyMode": "Tylko procesy uruchomione w terminalach cmux mogą się połączyć.",
"cmuxOnlyEnable": "Domyślny tryb w interfejsie ustawień",
"allowAllMode": "Pozwól dowolnemu lokalnemu procesowi na połączenie (bez sprawdzania pochodzenia).",
"allowAllEnable": "Tylko nadpisanie zmiennej środowiskowej: CMUX_SOCKET_MODE=allowAll",
"accessCallout": "Na współdzielonych maszynach używaj trybu Wyłączony lub Tylko procesy cmux.",
"cliOptions": "Opcje CLI",
"flagHeader": "Flaga",
"customSocketPath": "Niestandardowa ścieżka socketa",
"outputJson": "Wyjście w formacie JSON",
"targetWindow": "Celuj w konkretne okno",
"targetWorkspace": "Celuj w konkretny workspace",
"targetSurface": "Celuj w konkretny surface",
"idFormat": "Kontroluj format identyfikatorów w wyjściu JSON",
"workspaceCommands": "Polecenia workspace",
"listWorkspacesDesc": "Wyświetl wszystkie otwarte workspace'y.",
"newWorkspaceDesc": "Utwórz nowy workspace.",
"selectWorkspaceDesc": "Przełącz na konkretny workspace.",
"currentWorkspaceDesc": "Pobierz aktualnie aktywny workspace.",
"closeWorkspaceDesc": "Zamknij workspace.",
"splitCommands": "Polecenia podziału",
"newSplitDesc": "Utwórz nowy dzielony panel. Kierunki: left, right, up, down.",
"listSurfacesDesc": "Wyświetl wszystkie surface'y w bieżącym workspace.",
"focusSurfaceDesc": "Ustaw fokus na konkretnym surface.",
"inputCommands": "Polecenia wejścia",
"sendDesc": "Wyślij tekst do fokusowanego terminala.",
"sendKeyDesc": "Wyślij naciśnięcie klawisza. Klawisze: enter, tab, escape, backspace, delete, up, down, left, right.",
"sendSurfaceDesc": "Wyślij tekst do konkretnego surface'a.",
"sendKeySurfaceDesc": "Wyślij naciśnięcie klawisza do konkretnego surface'a.",
"notificationCommands": "Polecenia powiadomień",
"notifyDesc": "Wyślij powiadomienie.",
"listNotificationsDesc": "Wyświetl wszystkie powiadomienia.",
"clearNotificationsDesc": "Wyczyść wszystkie powiadomienia.",
"sidebarMetadata": "Polecenia metadanych paska bocznego",
"sidebarMetadataDesc": "Ustaw wskaźniki statusu, paski postępu i wpisy logów w pasku bocznym dla dowolnego workspace'a. Przydatne do skryptów budowania, integracji CI i agentów kodowania AI którzy chcą wyświetlić stan na pierwszy rzut oka.",
"setStatusDesc": "Ustaw wskaźnik statusu w pasku bocznym. Użyj unikalnego klucza żeby różne narzędzia mogły zarządzać własnymi wpisami.",
"clearStatusDesc": "Usuń wpis statusu z paska bocznego po kluczu.",
"listStatusDesc": "Wyświetl wszystkie wpisy statusu paska bocznego dla workspace'a.",
"setProgressDesc": "Ustaw pasek postępu w pasku bocznym (0.0 do 1.0).",
"clearProgressDesc": "Wyczyść pasek postępu paska bocznego.",
"logDesc": "Dodaj wpis logu do paska bocznego. Poziomy: info, progress, success, warning, error.",
"clearLogDesc": "Wyczyść wszystkie wpisy logów paska bocznego.",
"listLogDesc": "Wyświetl wpisy logów paska bocznego.",
"sidebarStateDesc": "Wyświetl wszystkie metadane paska bocznego (cwd, gałąź git, porty, status, postęp, logi).",
"utilityCommands": "Polecenia narzędziowe",
"pingDesc": "Sprawdź czy cmux działa i odpowiada.",
"capabilitiesDesc": "Wyświetl dostępne metody socketa i aktualny tryb dostępu.",
"identifyDesc": "Pokaż kontekst fokusowanego okna/workspace'a/panelu/surface'a.",
"envVariables": "Zmienne środowiskowe",
"variableHeader": "Zmienna",
"socketPathDesc": "Nadpisz ścieżkę socketa używaną przez CLI i integracje",
"socketEnableDesc": "Wymuś włączenie/wyłączenie socketa (1/0, true/false, on/off)",
"socketModeDesc": "Nadpisz tryb dostępu (cmuxOnly, allowAll, off). Akceptuje też cmux-only/cmux_only i allow-all/allow_all",
"workspaceIdDesc": "Ustawiane automatycznie: ID bieżącego workspace'a",
"surfaceIdDesc": "Ustawiane automatycznie: ID bieżącego surface'a",
"termProgramDesc": "Ustawione na ghostty",
"termDesc": "Ustawione na xterm-ghostty",
"envCallout": "Starsze wartości CMUX_SOCKET_MODE full i notifications są nadal akceptowane dla kompatybilności.",
"detectingCmux": "Wykrywanie cmux",
"examples": "Przykłady",
"pythonClient": "Klient Python",
"shellScript": "Skrypt powłoki",
"buildScriptNotification": "Skrypt budowania z powiadomieniem",
"metaTitle": "Dokumentacja API"
},
"notifications": {
"title": "Powiadomienia",
"metaDescription": "Wysyłaj powiadomienia na pulpit z agentów AI i skryptów w cmux. CLI, sekwencje ucieczki OSC 99/777 i integracja z hookami Claude Code.",
"intro": "cmux obsługuje powiadomienia na pulpicie, pozwalając agentom AI i skryptom alarmować Cię gdy potrzebują uwagi.",
"lifecycle": "Cykl życia",
"received": "Odebrane: powiadomienie pojawia się w panelu, alert na pulpicie się uruchamia (jeśli nie jest wytłumiony)",
"unread": "Nieprzeczytane: odznaka wyświetlana na karcie workspace'a",
"read": "Przeczytane: usunięte gdy wyświetlisz ten workspace",
"cleared": "Wyczyszczone: usunięte z panelu",
"suppression": "Wyciszanie",
"suppressionDesc": "Alerty na pulpicie są wyciszane gdy:",
"suppressItem1": "Okno cmux jest sfokusowane",
"suppressItem2": "Konkretny workspace wysyłający powiadomienie jest aktywny",
"suppressItem3": "Panel powiadomień jest otwarty",
"notificationPanel": "Panel powiadomień",
"notificationPanelDesc": "Naciśnij <openShortcut>⌘⇧I</openShortcut> aby otworzyć panel powiadomień. Kliknij powiadomienie aby przejść do tego workspace'a. Naciśnij <jumpShortcut>⌘⇧U</jumpShortcut> aby przejść bezpośrednio do workspace'a z najnowszym nieprzeczytanym powiadomieniem.",
"customCommand": "Niestandardowe polecenie",
"customCommandDesc": "Uruchom polecenie powłoki za każdym razem gdy powiadomienie jest zaplanowane. Ustaw to w Ustawieniach > Aplikacja > Polecenie powiadomienia. Polecenie uruchamia się przez /bin/sh -c z tymi zmiennymi środowiskowymi:",
"customCommandNote": "Polecenie działa niezależnie od wybieraka dźwięku systemowego. Ustaw wybierak na \"Brak\" aby używać tylko niestandardowego polecenia, lub zachowaj oba dla dźwięku systemowego plus niestandardowa akcja.",
"sending": "Wysyłanie powiadomień",
"cli": "CLI",
"osc777Title": "OSC 777 (prosty)",
"osc777Desc": "Protokół RXVT używa stałego formatu z tytułem i treścią:",
"osc99Title": "OSC 99 (zaawansowany)",
"osc99Desc": "Protokół Kitty obsługuje podtytuły i identyfikatory powiadomień:",
"variableHeader": "Zmienna",
"descriptionHeader": "Opis",
"envTitle": "Tytuł powiadomienia (nazwa workspace'a lub aplikacji)",
"envSubtitle": "Podtytuł powiadomienia",
"envBody": "Treść powiadomienia",
"cmpTitleBody": "Tytuł + treść",
"cmpSubtitle": "Podtytuł",
"cmpNotificationId": "ID powiadomienia",
"cmpComplexity": "Złożoność",
"cmpYes": "Tak",
"cmpNo": "Nie",
"cmpHigher": "Wyższa",
"cmpLower": "Niższa",
"featureHeader": "Funkcja",
"comparisonCallout": "Użyj OSC 777 do prostych powiadomień. Użyj OSC 99 gdy potrzebujesz podtytułów lub identyfikatorów powiadomień. Użyj CLI (cmux notify) dla najłatwiejszej integracji.",
"claudeCodeHooks": "Hooki Claude Code",
"claudeCodeHooksDesc": "cmux integruje się z <link>Claude Code</link> przez hooki aby powiadamiać Cię gdy zadania się zakończą.",
"createHookScript": "1. Utwórz skrypt hooka",
"configureClaude": "2. Skonfiguruj Claude Code",
"restartNote": "Zrestartuj Claude Code aby zastosować hooki.",
"copilotCliHooks": "GitHub Copilot CLI",
"copilotCliHooksDesc": "Copilot CLI obsługuje <link>hooki</link>, które uruchamiają polecenia shell przy zdarzeniach cyklu życia, takich jak wysłanie promptu, zatrzymanie agenta i błędy.",
"copilotCliRepoHooks": "Dla hooków na poziomie repozytorium utwórz plik .github/hooks/notify.json o tej samej strukturze:",
"integrationExamples": "Przykłady integracji",
"notifyAfterLong": "Powiadom po długim poleceniu",
"python": "Python",
"nodejs": "Node.js",
"tmuxPassthrough": "tmux passthrough",
"tmuxDesc": "Jeśli używasz tmux wewnątrz cmux, włącz passthrough:",
"metaTitle": "Powiadomienia"
},
"browserAutomation": {
"title": "Automatyzacja przeglądarki",
"metaDescription": "Dokumentacja poleceń przeglądarki cmux: nawigacja, interakcja z DOM, oczekiwanie, inspekcja, ewaluacja JavaScript, karty, dialogi, ramki, pobieranie i stan przeglądarki.",
"intro": "Grupa poleceń cmux browser zapewnia automatyzację przeglądarki wobec surface'ów przeglądarki cmux. Używaj jej do nawigacji, interakcji z elementami DOM, inspekcji stanu strony, ewaluacji JavaScript i zarządzania danymi sesji przeglądarki.",
"commandIndex": "Indeks poleceń",
"categoryHeader": "Kategoria",
"subcommandsHeader": "Podpolecenia",
"navAndTargeting": "Nawigacja i celowanie",
"waiting": "Oczekiwanie",
"domInteraction": "Interakcja z DOM",
"inspection": "Inspekcja",
"jsAndInjection": "JavaScript i wstrzykiwanie",
"framesDialogsDownloads": "Ramki, dialogi, pobieranie",
"stateAndSession": "Stan i dane sesji",
"tabsAndLogs": "Karty i logi",
"targetingSurface": "Celowanie w surface przeglądarki",
"targetingDesc": "Większość podpoleceń wymaga surface'a docelowego. Możesz go podać pozycyjnie lub z --surface.",
"navigation": "Nawigacja",
"waitingSection": "Oczekiwanie",
"waitingDesc": "Użyj wait aby blokować do momentu spełnienia selektorów, tekstu, fragmentów URL, stanu ładowania lub warunku JavaScript.",
"domSection": "Interakcja z DOM",
"domDesc": "Akcje mutujące obsługują --snapshot-after do szybkiej weryfikacji w skryptach.",
"inspectionSection": "Inspekcja",
"inspectionDesc": "Użyj strukturalnych getterów do skryptów i snapshotów/zrzutów ekranu do przeglądu przez człowieka.",
"jsSection": "Ewaluacja i wstrzykiwanie JavaScript",
"stateSection": "Stan",
"stateDesc": "Polecenia danych sesji obejmują ciasteczka, pamięć lokalną/sesyjną i pełne snapshoty stanu przeglądarki.",
"tabsSection": "Karty",
"tabsDesc": "Operacje na kartach przeglądarki mapują się na surface'y przeglądarki w aktywnej grupie kart przeglądarki.",
"consoleSection": "Konsola i błędy",
"dialogsSection": "Dialogi",
"framesSection": "Ramki",
"downloadsSection": "Pobieranie",
"commonPatterns": "Typowe wzorce",
"patternNavigate": "Nawiguj, czekaj, inspektuj",
"patternForm": "Wypełnij formularz i zweryfikuj tekst sukcesu",
"patternDebug": "Przechwyć artefakty debugowania przy błędzie",
"patternSession": "Zapisz i przywróć sesję przeglądarki",
"metaTitle": "Automatyzacja przeglądarki"
},
"changelog": {
"title": "Dziennik zmian",
"metaDescription": "Notatki wydań i historia wersji cmux. Nowe funkcje, poprawki błędów i zmiany dla natywnego terminala macOS.",
"metaTitle": "Historia zmian"
},
"navItems": {
"gettingStarted": "Szybki start",
"concepts": "Koncepty",
"configuration": "Konfiguracja",
"customCommands": "Niestandardowe polecenia",
"keyboardShortcuts": "Skróty klawiszowe",
"apiReference": "Dokumentacja API",
"browserAutomation": "Automatyzacja przeglądarki",
"notifications": "Powiadomienia",
"agentIntegrations": "Agent Integrations",
"claudeCodeTeams": "Claude Code Teams",
"ohMyOpenCode": "oh-my-opencode",
"changelog": "Dziennik zmian"
}
},
"legal": {
"privacyPolicy": "Polityka prywatności",
"termsOfService": "Regulamin",
"eula": "EULA"
},
"wallOfLove": {
"title": "Ściana Miłości",
"description": "Co ludzie mówią o cmux."
},
"testimonials": {
"mitchellh": "Kolejny dzień, kolejny projekt oparty na libghostty, tym razem terminal macOS z pionowymi kartami, lepszą organizacją/powiadomieniami, wbudowaną/skryptowalną przeglądarką, specjalnie skierowany do ludzi używających mnóstwa terminalowych workflow'ów agentowych.",
"schrockn": "To jest dokładnie produkt, którego szukałem. Po dwóch godzinach rano jestem zakochany.",
"egrefen": "Używałem tego cały weekend i jest niesamowite.",
"max4c": "to było moje ulubione narzędzie przez ostatnie dwa tygodnie",
"asaza": "cmux wygląda tak dobrze, że może wreszcie czas pożegnać się z VSCode",
"johnthedebs": "Hej, to wygląda naprawdę świetnie. Uwielbiam pomysły tutaj, konkretnie: programowalność, warstwowy UI, przeglądarka z API. Nie mogę się doczekać żeby to wypróbować. Chcę też dodać, że naprawdę doceniam Mitchella Hashimoto za stworzenie libghostty; czuć, że to ekscytujący czas dla użytkowników terminala.",
"joeriddles": "Pionowe karty w moim terminalu! Nigdy wcześniej o tym nie pomyślałem. Używam i kocham pionowe karty w Firefoxie.",
"dchu17": "Dałem temu szansę i było dość intuicyjne. Dobra robota!",
"afruth": "Podoba mi się, używałem tego ostatniego dnia na trzech równoległych projektach, każdy z kilkoma worktree'ami. Mając to w parze z lazygit i yazi / nvim byłem trochę bardziej produktywny niż zwykle, bez konieczności ścigania wielu instancji ghostty / iTerm. Czuję się też bardziej naturalnie niż tmux.",
"northprint": "Wypróbowałem cmux bo wyglądał dobrze, i jest dobry",
"indykish": "cmux jest całkiem niezły.",
"kataring": "Przeszedłem na cmux.dev",
"scottw": "To było takie przydatne odkrycie. Nie mogę go wystarczająco polecić.",
"johnblythe": "wziąłem to w weekend i pokochałem. czekałem na coś takiego.",
"bchris91": "To jest dokładnie to, czego chciałem. Świetna robota, dziękuję!",
"connorelsea": "Używam tego od tygodnia i jest fantastyczne. Pionowa karta dla każdego zadania w toku. Wewnątrz, Claude po jednej stronie a przeglądarka z PR i zasobami po drugiej, przełączam się między zadaniami i utrzymuję porządek. Połącz to ze skillami żeby Claude monitorował CI rekursywnie itp. czuję się oświecony szczerze mówiąc",
"tonkotsuboy": "Na początku roku przeszedłem z Warpa na Ghostty, ale teraz przeszedłem na cmux. Pionowe karty są wygodne i doceniam powiadomienia gdy zadania Claude Code się kończą. Jest oparty na Ghostty więc błyskawiczna wydajność zostaje. Wyświetlanie brancha i uzupełniania które skonfigurowałem w Ghostty nadal działają."
},
"nightly": {
"title": "cmux NIGHTLY",
"subtitle": "Najnowsze buildy z gałęzi main",
"metaTitle": "cmux NIGHTLY — Buildy Nightly",
"metaDescription": "Pobierz cmux NIGHTLY, osobną aplikację budowaną automatycznie z najnowszego commita na main. Działa obok wersji stabilnej z własnymi aktualizacjami automatycznymi.",
"description": "cmux NIGHTLY jest budowany automatycznie z najnowszego commita na main. Ma własne bundle ID, więc działa obok wersji stabilnej bez konfliktów. Używaj go, aby testować nowe funkcje przed ich wydaniem.",
"download": "Pobierz NIGHTLY na Maca",
"warning": "Buildy nightly mogą zawierać błędy lub niekompletne funkcje. W razie problemów zgłoś je na <githubLink>GitHubie</githubLink> lub w <discordLink>#nightly-bugs na Discordzie</discordLink> i przełącz się na wersję stabilną."
},
"languageSwitcher": {
"label": "Język"
}
}