diff --git a/README.ar.md b/README.ar.md new file mode 100644 index 00000000..7d87ec73 --- /dev/null +++ b/README.ar.md @@ -0,0 +1,148 @@ +> This translation was generated by Claude. If you have suggestions for improvement, please file a PR. + +
+ English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe +
+ +تطبيق طرفية لنظام macOS مبني على Ghostty مع علامات تبويب عمودية وإشعارات لوكلاء البرمجة بالذكاء الاصطناعي
+ +
+
+
+
+
+
+
+
+
+افتح ملف `.dmg` واسحب cmux إلى مجلد التطبيقات. يتم تحديث cmux تلقائياً عبر Sparkle، لذا تحتاج للتحميل مرة واحدة فقط.
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+للتحديث لاحقاً:
+
+```bash
+brew upgrade --cask cmux
+```
+
+عند التشغيل الأول، قد يطلب منك macOS تأكيد فتح تطبيق من مطور معروف. انقر **فتح** للمتابعة.
+
+## لماذا cmux؟
+
+أقوم بتشغيل الكثير من جلسات Claude Code وCodex بالتوازي. كنت أستخدم Ghostty مع مجموعة من الأجزاء المقسمة، وأعتمد على إشعارات macOS الأصلية لمعرفة متى يحتاجني وكيل ما. لكن نص إشعار Claude Code يكون دائماً مجرد "Claude is waiting for your input" بدون أي سياق، ومع فتح عدد كافٍ من علامات التبويب لم أعد قادراً حتى على قراءة العناوين.
+
+جربت بعض منظمات البرمجة لكن معظمها كانت تطبيقات Electron/Tauri وأداؤها كان يزعجني. كما أنني أفضل الطرفية لأن منظمات GUI تحبسك في سير عملها. لذا بنيت cmux كتطبيق macOS أصلي بـ Swift/AppKit. يستخدم libghostty لعرض الطرفية ويقرأ إعدادات Ghostty الحالية للسمات والخطوط والألوان.
+
+الإضافات الرئيسية هي الشريط الجانبي ونظام الإشعارات. يحتوي الشريط الجانبي على علامات تبويب عمودية تعرض فرع git ومجلد العمل والمنافذ المستمعة وآخر نص إشعار لكل مساحة عمل. يلتقط نظام الإشعارات تسلسلات الطرفية (OSC 9/99/777) ولديه CLI (`cmux notify`) يمكنك ربطه بخطافات الوكلاء لـ Claude Code وOpenCode وغيرها. عندما ينتظر وكيل ما، يحصل جزؤه على حلقة زرقاء وتضيء علامة التبويب في الشريط الجانبي، حتى أتمكن من معرفة أيها يحتاجني عبر الأقسام وعلامات التبويب. Cmd+Shift+U ينتقل إلى أحدث إشعار غير مقروء.
+
+المتصفح المدمج لديه API قابل للبرمجة مأخوذ من [agent-browser](https://github.com/vercel-labs/agent-browser). يمكن للوكلاء التقاط شجرة إمكانية الوصول والحصول على مراجع العناصر والنقر وملء النماذج وتنفيذ JS. يمكنك تقسيم جزء متصفح بجانب الطرفية وجعل Claude Code يتفاعل مع خادم التطوير مباشرة.
+
+كل شيء قابل للبرمجة عبر CLI وsocket API — إنشاء مساحات العمل/علامات التبويب، تقسيم الأجزاء، إرسال ضغطات المفاتيح، فتح عناوين URL في المتصفح.
+
+## اختصارات لوحة المفاتيح
+
+### مساحات العمل
+
+| الاختصار | الإجراء |
+|----------|--------|
+| ⌘ N | مساحة عمل جديدة |
+| ⌘ 1–8 | الانتقال إلى مساحة العمل 1–8 |
+| ⌘ 9 | الانتقال إلى آخر مساحة عمل |
+| ⌘ ⇧ W | إغلاق مساحة العمل |
+
+### الأسطح
+
+| الاختصار | الإجراء |
+|----------|--------|
+| ⌘ T | سطح جديد |
+| ⌘ ⇧ [ | السطح السابق |
+| ⌃ ⇧ Tab | السطح السابق |
+| ⌃ 1–8 | الانتقال إلى السطح 1–8 |
+| ⌃ 9 | الانتقال إلى آخر سطح |
+| ⌘ W | إغلاق السطح |
+
+### الأجزاء المقسمة
+
+| الاختصار | الإجراء |
+|----------|--------|
+| ⌘ D | تقسيم لليمين |
+| ⌘ ⇧ D | تقسيم للأسفل |
+| ⌥ ⌘ ← → ↑ ↓ | التركيز على الجزء حسب الاتجاه |
+
+### المتصفح
+
+| الاختصار | الإجراء |
+|----------|--------|
+| ⌘ ⇧ B | فتح المتصفح في قسم |
+| ⌘ L | التركيز على شريط العنوان |
+| ⌘ ] | للأمام |
+| ⌘ R | إعادة تحميل الصفحة |
+| ⌥ ⌘ I | فتح أدوات المطور |
+
+### الإشعارات
+
+| الاختصار | الإجراء |
+|----------|--------|
+| ⌘ ⇧ I | عرض لوحة الإشعارات |
+| ⌘ ⇧ U | الانتقال إلى أحدث إشعار غير مقروء |
+
+### البحث
+
+| الاختصار | الإجراء |
+|----------|--------|
+| ⌘ F | بحث |
+| ⌘ G / ⌘ ⇧ G | البحث التالي / السابق |
+| ⌘ ⇧ F | إخفاء شريط البحث |
+| ⌘ E | استخدام التحديد للبحث |
+
+### الطرفية
+
+| الاختصار | الإجراء |
+|----------|--------|
+| ⌘ K | مسح سجل التمرير |
+| ⌘ C | نسخ (مع التحديد) |
+| ⌘ V | لصق |
+| ⌘ + / ⌘ - | تكبير / تصغير حجم الخط |
+| ⌘ 0 | إعادة تعيين حجم الخط |
+
+### النافذة
+
+| الاختصار | الإجراء |
+|----------|--------|
+| ⌘ ⇧ N | نافذة جديدة |
+| ⌘ , | الإعدادات |
+| ⌘ ⇧ R | إعادة تحميل الإعدادات |
+| ⌘ Q | إنهاء |
+
+## الرخصة
+
+هذا المشروع مرخص بموجب رخصة GNU Affero العامة الإصدار 3.0 أو أحدث (`AGPL-3.0-or-later`).
+
+راجع `LICENSE` للنص الكامل.
diff --git a/README.bs.md b/README.bs.md
new file mode 100644
index 00000000..c748b09f
--- /dev/null
+++ b/README.bs.md
@@ -0,0 +1,148 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
++ English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe +
+ +macOS terminal baziran na Ghostty sa vertikalnim tabovima i obavještenjima za AI agente za programiranje
+ +
+
+
+
+
+
+
+
+
+Otvorite `.dmg` datoteku i prevucite cmux u folder Aplikacije. cmux se automatski ažurira putem Sparkle, tako da trebate preuzeti samo jednom.
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+Za ažuriranje kasnije:
+
+```bash
+brew upgrade --cask cmux
+```
+
+Pri prvom pokretanju, macOS vas može zamoliti da potvrdite otvaranje aplikacije od identificiranog programera. Kliknite **Otvori** da nastavite.
+
+## Zašto cmux?
+
+Pokrećem mnogo Claude Code i Codex sesija paralelno. Koristio sam Ghostty sa gomilom podijeljenih panela i oslanjao se na nativna macOS obavještenja da znam kada agent treba mene. Ali tijelo obavještenja Claude Code je uvijek samo „Claude is waiting for your input" bez konteksta, a sa dovoljno otvorenih tabova nisam mogao ni pročitati naslove.
+
+Isprobao sam nekoliko orkestratora za kodiranje, ali većina ih je bila Electron/Tauri aplikacije i performanse su me nervirale. Također jednostavno preferiram terminal jer GUI orkestratori vas zaključavaju u svoj radni tok. Zato sam izgradio cmux kao nativnu macOS aplikaciju u Swift/AppKit. Koristi libghostty za renderiranje terminala i čita vašu postojeću Ghostty konfiguraciju za teme, fontove i boje.
+
+Glavni dodaci su bočna traka i sistem obavještenja. Bočna traka ima vertikalne tabove koji prikazuju git granu, radni direktorij, portove koji slušaju i tekst posljednjeg obavještenja za svaki radni prostor. Sistem obavještenja hvata terminalne sekvence (OSC 9/99/777) i ima CLI (`cmux notify`) koji možete povezati sa hookovima agenata za Claude Code, OpenCode itd. Kada agent čeka, njegov panel dobija plavi prsten, a tab se osvjetljava u bočnoj traci, tako da mogu vidjeti koji me treba kroz podjele i tabove. Cmd+Shift+U skače na najnovije nepročitano.
+
+Ugrađeni preglednik ima skriptabilni API portiran iz [agent-browser](https://github.com/vercel-labs/agent-browser). Agenti mogu snimiti stablo pristupačnosti, dobiti reference elemenata, kliknuti, popuniti formulare i evaluirati JS. Možete podijeliti panel preglednika pored terminala i omogućiti Claude Code da direktno komunicira sa vašim razvojnim serverom.
+
+Sve je skriptabilno kroz CLI i socket API — kreiranje radnih prostora/tabova, dijeljenje panela, slanje pritisaka tipki, otvaranje URL-ova u pregledniku.
+
+## Prečice na Tastaturi
+
+### Radni prostori
+
+| Prečica | Akcija |
+|----------|--------|
+| ⌘ N | Novi radni prostor |
+| ⌘ 1–8 | Skoči na radni prostor 1–8 |
+| ⌘ 9 | Skoči na posljednji radni prostor |
+| ⌘ ⇧ W | Zatvori radni prostor |
+
+### Površine
+
+| Prečica | Akcija |
+|----------|--------|
+| ⌘ T | Nova površina |
+| ⌘ ⇧ [ | Prethodna površina |
+| ⌃ ⇧ Tab | Prethodna površina |
+| ⌃ 1–8 | Skoči na površinu 1–8 |
+| ⌃ 9 | Skoči na posljednju površinu |
+| ⌘ W | Zatvori površinu |
+
+### Podijeljeni Paneli
+
+| Prečica | Akcija |
+|----------|--------|
+| ⌘ D | Podijeli desno |
+| ⌘ ⇧ D | Podijeli dolje |
+| ⌥ ⌘ ← → ↑ ↓ | Fokusiraj panel po smjeru |
+
+### Preglednik
+
+| Prečica | Akcija |
+|----------|--------|
+| ⌘ ⇧ B | Otvori preglednik u podjeli |
+| ⌘ L | Fokusiraj adresnu traku |
+| ⌘ ] | Naprijed |
+| ⌘ R | Ponovo učitaj stranicu |
+| ⌥ ⌘ I | Otvori Alate za Programere |
+
+### Obavještenja
+
+| Prečica | Akcija |
+|----------|--------|
+| ⌘ ⇧ I | Prikaži panel obavještenja |
+| ⌘ ⇧ U | Skoči na posljednje nepročitano |
+
+### Pretraga
+
+| Prečica | Akcija |
+|----------|--------|
+| ⌘ F | Pretraži |
+| ⌘ G / ⌘ ⇧ G | Nađi sljedeći / prethodni |
+| ⌘ ⇧ F | Sakrij traku pretrage |
+| ⌘ E | Koristi selekciju za pretragu |
+
+### Terminal
+
+| Prečica | Akcija |
+|----------|--------|
+| ⌘ K | Očisti scrollback |
+| ⌘ C | Kopiraj (sa selekcijom) |
+| ⌘ V | Zalijepi |
+| ⌘ + / ⌘ - | Povećaj / smanji veličinu fonta |
+| ⌘ 0 | Resetuj veličinu fonta |
+
+### Prozor
+
+| Prečica | Akcija |
+|----------|--------|
+| ⌘ ⇧ N | Novi prozor |
+| ⌘ , | Postavke |
+| ⌘ ⇧ R | Ponovo učitaj konfiguraciju |
+| ⌘ Q | Zatvori |
+
+## Licenca
+
+Ovaj projekat je licenciran pod GNU Affero General Public License v3.0 ili novijom (`AGPL-3.0-or-later`).
+
+Pogledajte `LICENSE` za puni tekst.
diff --git a/README.da.md b/README.da.md
new file mode 100644
index 00000000..ee57fb4e
--- /dev/null
+++ b/README.da.md
@@ -0,0 +1,148 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
++ English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe +
+ +En Ghostty-baseret macOS-terminal med lodrette faner og notifikationer til AI-kodningsagenter
+ +
+
+
+
+
+
+
+
+
+Åbn `.dmg`-filen og træk cmux til din Programmer-mappe. cmux opdaterer sig selv automatisk via Sparkle, så du behøver kun at downloade én gang.
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+For at opdatere senere:
+
+```bash
+brew upgrade --cask cmux
+```
+
+Ved første start kan macOS bede dig om at bekræfte åbning af en app fra en identificeret udvikler. Klik på **Åbn** for at fortsætte.
+
+## Hvorfor cmux?
+
+Jeg kører mange Claude Code- og Codex-sessioner parallelt. Jeg brugte Ghostty med en masse delte paneler og stolede på native macOS-notifikationer til at vide, hvornår en agent havde brug for mig. Men Claude Codes notifikationstekst er altid bare "Claude is waiting for your input" uden kontekst, og med nok åbne faner kunne jeg ikke engang læse titlerne længere.
+
+Jeg prøvede et par kodningsorkestratore, men de fleste var Electron/Tauri-apps, og ydelsen irriterede mig. Jeg foretrækker også bare terminalen, da GUI-orkestratore låser dig ind i deres arbejdsgang. Så jeg byggede cmux som en nativ macOS-app i Swift/AppKit. Den bruger libghostty til terminal-rendering og læser din eksisterende Ghostty-konfiguration til temaer, skrifttyper og farver.
+
+De vigtigste tilføjelser er sidebjælken og notifikationssystemet. Sidebjælken har lodrette faner, der viser git-branch, arbejdsmappe, lyttende porte og den seneste notifikationstekst for hvert workspace. Notifikationssystemet opfanger terminalsekvenser (OSC 9/99/777) og har en CLI (`cmux notify`), du kan koble til agent-hooks for Claude Code, OpenCode osv. Når en agent venter, får dens panel en blå ring, og fanen lyser op i sidebjælken, så jeg kan se, hvilken der har brug for mig på tværs af opdelinger og faner. Cmd+Shift+U hopper til den seneste ulæste.
+
+Den indbyggede browser har en scriptbar API porteret fra [agent-browser](https://github.com/vercel-labs/agent-browser). Agenter kan tage et snapshot af tilgængelighedstræet, få elementreferencer, klikke, udfylde formularer og evaluere JS. Du kan dele et browserpanel ved siden af din terminal og lade Claude Code interagere direkte med din udviklingsserver.
+
+Alt er scriptbart gennem CLI og socket API — opret workspaces/faner, del paneler, send tastetryk, åbn URL'er i browseren.
+
+## Tastaturgenveje
+
+### Workspaces
+
+| Genvej | Handling |
+|----------|--------|
+| ⌘ N | Nyt workspace |
+| ⌘ 1–8 | Hop til workspace 1–8 |
+| ⌘ 9 | Hop til sidste workspace |
+| ⌘ ⇧ W | Luk workspace |
+
+### Overflader
+
+| Genvej | Handling |
+|----------|--------|
+| ⌘ T | Ny overflade |
+| ⌘ ⇧ [ | Forrige overflade |
+| ⌃ ⇧ Tab | Forrige overflade |
+| ⌃ 1–8 | Hop til overflade 1–8 |
+| ⌃ 9 | Hop til sidste overflade |
+| ⌘ W | Luk overflade |
+
+### Delte Paneler
+
+| Genvej | Handling |
+|----------|--------|
+| ⌘ D | Del til højre |
+| ⌘ ⇧ D | Del nedad |
+| ⌥ ⌘ ← → ↑ ↓ | Fokuser panel retningsbestemt |
+
+### Browser
+
+| Genvej | Handling |
+|----------|--------|
+| ⌘ ⇧ B | Åbn browser i opdeling |
+| ⌘ L | Fokuser adresselinjen |
+| ⌘ ] | Frem |
+| ⌘ R | Genindlæs side |
+| ⌥ ⌘ I | Åbn Udviklerværktøjer |
+
+### Notifikationer
+
+| Genvej | Handling |
+|----------|--------|
+| ⌘ ⇧ I | Vis notifikationspanel |
+| ⌘ ⇧ U | Hop til seneste ulæste |
+
+### Søg
+
+| Genvej | Handling |
+|----------|--------|
+| ⌘ F | Søg |
+| ⌘ G / ⌘ ⇧ G | Find næste / forrige |
+| ⌘ ⇧ F | Skjul søgelinje |
+| ⌘ E | Brug markering til søgning |
+
+### Terminal
+
+| Genvej | Handling |
+|----------|--------|
+| ⌘ K | Ryd scrollback |
+| ⌘ C | Kopiér (med markering) |
+| ⌘ V | Indsæt |
+| ⌘ + / ⌘ - | Forøg / formindsk skriftstørrelse |
+| ⌘ 0 | Nulstil skriftstørrelse |
+
+### Vindue
+
+| Genvej | Handling |
+|----------|--------|
+| ⌘ ⇧ N | Nyt vindue |
+| ⌘ , | Indstillinger |
+| ⌘ ⇧ R | Genindlæs konfiguration |
+| ⌘ Q | Afslut |
+
+## Licens
+
+Dette projekt er licenseret under GNU Affero General Public License v3.0 eller senere (`AGPL-3.0-or-later`).
+
+Se `LICENSE` for den fulde tekst.
diff --git a/README.de.md b/README.de.md
new file mode 100644
index 00000000..a5340f85
--- /dev/null
+++ b/README.de.md
@@ -0,0 +1,146 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
+English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe
+ +Ein Ghostty-basiertes macOS-Terminal mit vertikalen Tabs und Benachrichtigungen für AI-Coding-Agenten
+ +
+
+
+
+
+
+
+
+
+Öffnen Sie die `.dmg`-Datei und ziehen Sie cmux in Ihren Programme-Ordner. cmux aktualisiert sich automatisch über Sparkle, sodass Sie nur einmal herunterladen müssen.
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+Später aktualisieren:
+
+```bash
+brew upgrade --cask cmux
+```
+
+Beim ersten Start fordert macOS Sie möglicherweise auf, das Öffnen einer App von einem identifizierten Entwickler zu bestätigen. Klicken Sie auf **Öffnen**, um fortzufahren.
+
+## Warum cmux?
+
+Ich führe viele Claude Code- und Codex-Sitzungen parallel aus. Ich habe Ghostty mit einer Menge geteilter Bereiche verwendet und mich auf die nativen macOS-Benachrichtigungen verlassen, um zu wissen, wann ein Agent mich braucht. Aber der Benachrichtigungstext von Claude Code ist immer nur „Claude is waiting for your input" ohne Kontext, und bei genügend offenen Tabs konnte ich nicht einmal mehr die Titel lesen.
+
+Ich habe einige Coding-Orchestratoren ausprobiert, aber die meisten waren Electron/Tauri-Apps und die Performance hat mich gestört. Ich bevorzuge außerdem das Terminal, da GUI-Orchestratoren einen in ihren Workflow einschließen. Also habe ich cmux als native macOS-App in Swift/AppKit gebaut. Es verwendet libghostty für das Terminal-Rendering und liest Ihre vorhandene Ghostty-Konfiguration für Themes, Schriftarten und Farben.
+
+Die wesentlichen Ergänzungen sind die Seitenleiste und das Benachrichtigungssystem. Die Seitenleiste hat vertikale Tabs, die Git-Branch, Arbeitsverzeichnis, lauschende Ports und den neuesten Benachrichtigungstext für jeden Arbeitsbereich anzeigen. Das Benachrichtigungssystem erkennt Terminal-Sequenzen (OSC 9/99/777) und bietet eine CLI (`cmux notify`), die Sie in Agent-Hooks für Claude Code, OpenCode usw. einbinden können. Wenn ein Agent wartet, bekommt sein Bereich einen blauen Ring und der Tab leuchtet in der Seitenleiste auf, sodass ich über Teilungen und Tabs hinweg erkennen kann, welcher mich braucht. ⌘⇧U springt zur neuesten ungelesenen Benachrichtigung.
+
+Der integrierte Browser hat eine skriptfähige API, portiert von [agent-browser](https://github.com/vercel-labs/agent-browser). Agenten können den Barrierefreiheitsbaum erfassen, Elementreferenzen erhalten, klicken, Formulare ausfüllen und JS ausführen. Sie können einen Browser-Bereich neben Ihrem Terminal teilen und Claude Code direkt mit Ihrem Entwicklungsserver interagieren lassen.
+
+Alles ist über CLI und Socket-API skriptfähig — Arbeitsbereiche/Tabs erstellen, Bereiche teilen, Tastenanschläge senden, URLs im Browser öffnen.
+
+## Tastenkürzel
+
+### Arbeitsbereiche
+
+| Tastenkürzel | Aktion |
+|----------|--------|
+| ⌘ N | Neuer Arbeitsbereich |
+| ⌘ 1–8 | Zu Arbeitsbereich 1–8 springen |
+| ⌘ 9 | Zum letzten Arbeitsbereich springen |
+| ⌘ ⇧ W | Arbeitsbereich schließen |
+
+### Oberflächen
+
+| Tastenkürzel | Aktion |
+|----------|--------|
+| ⌘ T | Neue Oberfläche |
+| ⌘ ⇧ [ | Vorherige Oberfläche |
+| ⌃ ⇧ Tab | Vorherige Oberfläche |
+| ⌃ 1–8 | Zu Oberfläche 1–8 springen |
+| ⌃ 9 | Zur letzten Oberfläche springen |
+| ⌘ W | Oberfläche schließen |
+
+### Geteilte Bereiche
+
+| Tastenkürzel | Aktion |
+|----------|--------|
+| ⌘ D | Nach rechts teilen |
+| ⌘ ⇧ D | Nach unten teilen |
+| ⌥ ⌘ ← → ↑ ↓ | Bereich richtungsabhängig fokussieren |
+
+### Browser
+
+| Tastenkürzel | Aktion |
+|----------|--------|
+| ⌘ ⇧ B | Browser in Teilung öffnen |
+| ⌘ L | Adressleiste fokussieren |
+| ⌘ ] | Vorwärts |
+| ⌘ R | Seite neu laden |
+| ⌥ ⌘ I | Entwicklertools öffnen |
+
+### Benachrichtigungen
+
+| Tastenkürzel | Aktion |
+|----------|--------|
+| ⌘ ⇧ I | Benachrichtigungspanel anzeigen |
+| ⌘ ⇧ U | Zur neuesten ungelesenen springen |
+
+### Suchen
+
+| Tastenkürzel | Aktion |
+|----------|--------|
+| ⌘ F | Suchen |
+| ⌘ G / ⌘ ⇧ G | Nächstes / vorheriges Ergebnis |
+| ⌘ ⇧ F | Suchleiste ausblenden |
+| ⌘ E | Auswahl für Suche verwenden |
+
+### Terminal
+
+| Tastenkürzel | Aktion |
+|----------|--------|
+| ⌘ K | Scrollback löschen |
+| ⌘ C | Kopieren (mit Auswahl) |
+| ⌘ V | Einfügen |
+| ⌘ + / ⌘ - | Schriftgröße vergrößern / verkleinern |
+| ⌘ 0 | Schriftgröße zurücksetzen |
+
+### Fenster
+
+| Tastenkürzel | Aktion |
+|----------|--------|
+| ⌘ ⇧ N | Neues Fenster |
+| ⌘ , | Einstellungen |
+| ⌘ ⇧ R | Konfiguration neu laden |
+| ⌘ Q | Beenden |
+
+## Lizenz
+
+Dieses Projekt ist unter der GNU Affero General Public License v3.0 oder neuer (`AGPL-3.0-or-later`) lizenziert.
+
+Den vollständigen Lizenztext finden Sie in der `LICENSE`-Datei.
diff --git a/README.es.md b/README.es.md
new file mode 100644
index 00000000..e8cffd47
--- /dev/null
+++ b/README.es.md
@@ -0,0 +1,146 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
+English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe
+ +Un terminal macOS basado en Ghostty con pestañas verticales y notificaciones para agentes de programación con IA
+ +
+
+
+
+
+
+
+
+
+Abre el `.dmg` y arrastra cmux a tu carpeta de Aplicaciones. cmux se actualiza automáticamente a través de Sparkle, así que solo necesitas descargarlo una vez.
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+Para actualizar más tarde:
+
+```bash
+brew upgrade --cask cmux
+```
+
+En el primer inicio, macOS puede pedirte que confirmes la apertura de una app de un desarrollador identificado. Haz clic en **Abrir** para continuar.
+
+## ¿Por qué cmux?
+
+Ejecuto muchas sesiones de Claude Code y Codex en paralelo. Estaba usando Ghostty con un montón de paneles divididos y dependía de las notificaciones nativas de macOS para saber cuándo un agente me necesitaba. Pero el cuerpo de la notificación de Claude Code siempre es solo "Claude is waiting for your input" sin contexto, y con suficientes pestañas abiertas ya ni siquiera podía leer los títulos.
+
+Probé algunos orquestadores de programación, pero la mayoría eran aplicaciones Electron/Tauri y el rendimiento me molestaba. Además, simplemente prefiero la terminal ya que los orquestadores con GUI te encierran en su flujo de trabajo. Así que construí cmux como una app nativa de macOS en Swift/AppKit. Usa libghostty para el renderizado del terminal y lee tu configuración existente de Ghostty para temas, fuentes y colores.
+
+Las principales adiciones son la barra lateral y el sistema de notificaciones. La barra lateral tiene pestañas verticales que muestran la rama de git, el directorio de trabajo, los puertos en escucha y el texto de la última notificación para cada espacio de trabajo. El sistema de notificaciones detecta secuencias de terminal (OSC 9/99/777) y tiene un CLI (`cmux notify`) que puedes conectar a los hooks de agentes para Claude Code, OpenCode, etc. Cuando un agente está esperando, su panel obtiene un anillo azul y la pestaña se ilumina en la barra lateral, para que pueda saber cuál me necesita entre divisiones y pestañas. ⌘⇧U salta a la notificación no leída más reciente.
+
+El navegador integrado tiene una API programable portada de [agent-browser](https://github.com/vercel-labs/agent-browser). Los agentes pueden capturar el árbol de accesibilidad, obtener referencias de elementos, hacer clic, rellenar formularios y ejecutar JS. Puedes dividir un panel de navegador junto a tu terminal y hacer que Claude Code interactúe directamente con tu servidor de desarrollo.
+
+Todo es programable a través del CLI y la API de socket — crear espacios de trabajo/pestañas, dividir paneles, enviar pulsaciones de teclas, abrir URLs en el navegador.
+
+## Atajos de teclado
+
+### Espacios de trabajo
+
+| Atajo | Acción |
+|----------|--------|
+| ⌘ N | Nuevo espacio de trabajo |
+| ⌘ 1–8 | Ir al espacio de trabajo 1–8 |
+| ⌘ 9 | Ir al último espacio de trabajo |
+| ⌘ ⇧ W | Cerrar espacio de trabajo |
+
+### Superficies
+
+| Atajo | Acción |
+|----------|--------|
+| ⌘ T | Nueva superficie |
+| ⌘ ⇧ [ | Superficie anterior |
+| ⌃ ⇧ Tab | Superficie anterior |
+| ⌃ 1–8 | Ir a la superficie 1–8 |
+| ⌃ 9 | Ir a la última superficie |
+| ⌘ W | Cerrar superficie |
+
+### Paneles divididos
+
+| Atajo | Acción |
+|----------|--------|
+| ⌘ D | Dividir a la derecha |
+| ⌘ ⇧ D | Dividir hacia abajo |
+| ⌥ ⌘ ← → ↑ ↓ | Enfocar panel direccionalmente |
+
+### Navegador
+
+| Atajo | Acción |
+|----------|--------|
+| ⌘ ⇧ B | Abrir navegador en división |
+| ⌘ L | Enfocar barra de direcciones |
+| ⌘ ] | Adelante |
+| ⌘ R | Recargar página |
+| ⌥ ⌘ I | Abrir herramientas de desarrollo |
+
+### Notificaciones
+
+| Atajo | Acción |
+|----------|--------|
+| ⌘ ⇧ I | Mostrar panel de notificaciones |
+| ⌘ ⇧ U | Ir a la última no leída |
+
+### Buscar
+
+| Atajo | Acción |
+|----------|--------|
+| ⌘ F | Buscar |
+| ⌘ G / ⌘ ⇧ G | Buscar siguiente / anterior |
+| ⌘ ⇧ F | Ocultar barra de búsqueda |
+| ⌘ E | Usar selección para buscar |
+
+### Terminal
+
+| Atajo | Acción |
+|----------|--------|
+| ⌘ K | Limpiar historial de desplazamiento |
+| ⌘ C | Copiar (con selección) |
+| ⌘ V | Pegar |
+| ⌘ + / ⌘ - | Aumentar / disminuir tamaño de fuente |
+| ⌘ 0 | Restablecer tamaño de fuente |
+
+### Ventana
+
+| Atajo | Acción |
+|----------|--------|
+| ⌘ ⇧ N | Nueva ventana |
+| ⌘ , | Ajustes |
+| ⌘ ⇧ R | Recargar configuración |
+| ⌘ Q | Salir |
+
+## Licencia
+
+Este proyecto está licenciado bajo la Licencia Pública General Affero de GNU v3.0 o posterior (`AGPL-3.0-or-later`).
+
+Consulta el archivo `LICENSE` para el texto completo.
diff --git a/README.fr.md b/README.fr.md
new file mode 100644
index 00000000..00b259ae
--- /dev/null
+++ b/README.fr.md
@@ -0,0 +1,146 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
+English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe
+ +Un terminal macOS basé sur Ghostty avec des onglets verticaux et des notifications pour les agents de programmation IA
+ +
+
+
+
+
+
+
+
+
+Ouvrez le `.dmg` et glissez cmux dans votre dossier Applications. cmux se met à jour automatiquement via Sparkle, vous n'avez donc besoin de le télécharger qu'une seule fois.
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+Pour mettre à jour plus tard :
+
+```bash
+brew upgrade --cask cmux
+```
+
+Au premier lancement, macOS peut vous demander de confirmer l'ouverture d'une application provenant d'un développeur identifié. Cliquez sur **Ouvrir** pour continuer.
+
+## Pourquoi cmux ?
+
+J'exécute beaucoup de sessions Claude Code et Codex en parallèle. J'utilisais Ghostty avec plein de panneaux divisés et je comptais sur les notifications natives de macOS pour savoir quand un agent avait besoin de moi. Mais le contenu des notifications de Claude Code est toujours juste « Claude is waiting for your input » sans aucun contexte, et avec suffisamment d'onglets ouverts, je ne pouvais même plus lire les titres.
+
+J'ai essayé quelques orchestrateurs de programmation, mais la plupart étaient des applications Electron/Tauri et les performances me dérangeaient. Je préfère aussi simplement le terminal, car les orchestrateurs à interface graphique vous enferment dans leur flux de travail. J'ai donc construit cmux comme une application macOS native en Swift/AppKit. Elle utilise libghostty pour le rendu du terminal et lit votre configuration Ghostty existante pour les thèmes, polices et couleurs.
+
+Les principaux ajouts sont la barre latérale et le système de notifications. La barre latérale comporte des onglets verticaux qui affichent la branche git, le répertoire de travail, les ports en écoute et le texte de la dernière notification pour chaque espace de travail. Le système de notifications capte les séquences de terminal (OSC 9/99/777) et dispose d'un CLI (`cmux notify`) que vous pouvez brancher aux hooks d'agents pour Claude Code, OpenCode, etc. Quand un agent est en attente, son panneau reçoit un anneau bleu et l'onglet s'illumine dans la barre latérale, pour que je puisse identifier lequel a besoin de moi parmi les divisions et les onglets. ⌘⇧U permet de sauter à la notification non lue la plus récente.
+
+Le navigateur intégré dispose d'une API scriptable portée depuis [agent-browser](https://github.com/vercel-labs/agent-browser). Les agents peuvent capturer l'arbre d'accessibilité, obtenir des références d'éléments, cliquer, remplir des formulaires et exécuter du JS. Vous pouvez diviser un panneau navigateur à côté de votre terminal et laisser Claude Code interagir directement avec votre serveur de développement.
+
+Tout est scriptable via le CLI et l'API socket — créer des espaces de travail/onglets, diviser des panneaux, envoyer des frappes clavier, ouvrir des URL dans le navigateur.
+
+## Raccourcis clavier
+
+### Espaces de travail
+
+| Raccourci | Action |
+|----------|--------|
+| ⌘ N | Nouvel espace de travail |
+| ⌘ 1–8 | Aller à l'espace de travail 1–8 |
+| ⌘ 9 | Aller au dernier espace de travail |
+| ⌘ ⇧ W | Fermer l'espace de travail |
+
+### Surfaces
+
+| Raccourci | Action |
+|----------|--------|
+| ⌘ T | Nouvelle surface |
+| ⌘ ⇧ [ | Surface précédente |
+| ⌃ ⇧ Tab | Surface précédente |
+| ⌃ 1–8 | Aller à la surface 1–8 |
+| ⌃ 9 | Aller à la dernière surface |
+| ⌘ W | Fermer la surface |
+
+### Panneaux divisés
+
+| Raccourci | Action |
+|----------|--------|
+| ⌘ D | Diviser à droite |
+| ⌘ ⇧ D | Diviser vers le bas |
+| ⌥ ⌘ ← → ↑ ↓ | Focaliser le panneau directionnellement |
+
+### Navigateur
+
+| Raccourci | Action |
+|----------|--------|
+| ⌘ ⇧ B | Ouvrir le navigateur en division |
+| ⌘ L | Focaliser la barre d'adresse |
+| ⌘ ] | Avancer |
+| ⌘ R | Recharger la page |
+| ⌥ ⌘ I | Ouvrir les outils de développement |
+
+### Notifications
+
+| Raccourci | Action |
+|----------|--------|
+| ⌘ ⇧ I | Afficher le panneau de notifications |
+| ⌘ ⇧ U | Aller à la dernière non lue |
+
+### Recherche
+
+| Raccourci | Action |
+|----------|--------|
+| ⌘ F | Rechercher |
+| ⌘ G / ⌘ ⇧ G | Résultat suivant / précédent |
+| ⌘ ⇧ F | Masquer la barre de recherche |
+| ⌘ E | Utiliser la sélection pour la recherche |
+
+### Terminal
+
+| Raccourci | Action |
+|----------|--------|
+| ⌘ K | Effacer l'historique de défilement |
+| ⌘ C | Copier (avec sélection) |
+| ⌘ V | Coller |
+| ⌘ + / ⌘ - | Augmenter / diminuer la taille de police |
+| ⌘ 0 | Réinitialiser la taille de police |
+
+### Fenêtre
+
+| Raccourci | Action |
+|----------|--------|
+| ⌘ ⇧ N | Nouvelle fenêtre |
+| ⌘ , | Paramètres |
+| ⌘ ⇧ R | Recharger la configuration |
+| ⌘ Q | Quitter |
+
+## Licence
+
+Ce projet est sous licence GNU Affero General Public License v3.0 ou ultérieure (`AGPL-3.0-or-later`).
+
+Consultez le fichier `LICENSE` pour le texte complet.
diff --git a/README.it.md b/README.it.md
new file mode 100644
index 00000000..09c3a058
--- /dev/null
+++ b/README.it.md
@@ -0,0 +1,148 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
++ English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe +
+ +Un terminale macOS basato su Ghostty con schede verticali e notifiche per agenti di programmazione AI
+ +
+
+
+
+
+
+
+
+
+Apri il file `.dmg` e trascina cmux nella cartella Applicazioni. cmux si aggiorna automaticamente tramite Sparkle, quindi devi scaricarlo solo una volta.
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+Per aggiornare in seguito:
+
+```bash
+brew upgrade --cask cmux
+```
+
+Al primo avvio, macOS potrebbe chiederti di confermare l'apertura di un'app da uno sviluppatore identificato. Fai clic su **Apri** per procedere.
+
+## Perché cmux?
+
+Eseguo molte sessioni di Claude Code e Codex in parallelo. Usavo Ghostty con un mucchio di pannelli divisi, e mi affidavo alle notifiche native di macOS per sapere quando un agente aveva bisogno di me. Ma il corpo della notifica di Claude Code è sempre solo "Claude is waiting for your input" senza contesto, e con abbastanza schede aperte non riuscivo nemmeno più a leggere i titoli.
+
+Ho provato alcuni orchestratori di codifica, ma la maggior parte erano app Electron/Tauri e le prestazioni mi infastidivano. Inoltre preferisco semplicemente il terminale dato che gli orchestratori con interfaccia grafica ti vincolano al loro flusso di lavoro. Così ho costruito cmux come app macOS nativa in Swift/AppKit. Usa libghostty per il rendering del terminale e legge la tua configurazione Ghostty esistente per temi, font e colori.
+
+Le aggiunte principali sono la barra laterale e il sistema di notifiche. La barra laterale ha schede verticali che mostrano il branch git, la directory di lavoro, le porte in ascolto e il testo dell'ultima notifica per ogni workspace. Il sistema di notifiche rileva le sequenze terminale (OSC 9/99/777) e ha un CLI (`cmux notify`) che puoi collegare agli hook degli agenti per Claude Code, OpenCode, ecc. Quando un agente è in attesa, il suo pannello riceve un anello blu e la scheda si illumina nella barra laterale, così posso capire quale ha bisogno di me tra divisioni e schede. Cmd+Shift+U salta alla più recente non letta.
+
+Il browser integrato ha un'API scriptabile derivata da [agent-browser](https://github.com/vercel-labs/agent-browser). Gli agenti possono acquisire l'albero di accessibilità, ottenere riferimenti agli elementi, fare clic, compilare moduli e valutare JS. Puoi dividere un pannello browser accanto al tuo terminale e far interagire Claude Code direttamente con il tuo server di sviluppo.
+
+Tutto è scriptabile attraverso il CLI e la socket API — creare workspace/schede, dividere pannelli, inviare sequenze di tasti, aprire URL nel browser.
+
+## Scorciatoie da Tastiera
+
+### Workspace
+
+| Scorciatoia | Azione |
+|----------|--------|
+| ⌘ N | Nuovo workspace |
+| ⌘ 1–8 | Vai al workspace 1–8 |
+| ⌘ 9 | Vai all'ultimo workspace |
+| ⌘ ⇧ W | Chiudi workspace |
+
+### Superfici
+
+| Scorciatoia | Azione |
+|----------|--------|
+| ⌘ T | Nuova superficie |
+| ⌘ ⇧ [ | Superficie precedente |
+| ⌃ ⇧ Tab | Superficie precedente |
+| ⌃ 1–8 | Vai alla superficie 1–8 |
+| ⌃ 9 | Vai all'ultima superficie |
+| ⌘ W | Chiudi superficie |
+
+### Pannelli Divisi
+
+| Scorciatoia | Azione |
+|----------|--------|
+| ⌘ D | Dividi a destra |
+| ⌘ ⇧ D | Dividi in basso |
+| ⌥ ⌘ ← → ↑ ↓ | Sposta il focus direzionalmente |
+
+### Browser
+
+| Scorciatoia | Azione |
+|----------|--------|
+| ⌘ ⇧ B | Apri browser in divisione |
+| ⌘ L | Focus sulla barra degli indirizzi |
+| ⌘ ] | Avanti |
+| ⌘ R | Ricarica pagina |
+| ⌥ ⌘ I | Apri Strumenti di Sviluppo |
+
+### Notifiche
+
+| Scorciatoia | Azione |
+|----------|--------|
+| ⌘ ⇧ I | Mostra pannello notifiche |
+| ⌘ ⇧ U | Vai all'ultima non letta |
+
+### Cerca
+
+| Scorciatoia | Azione |
+|----------|--------|
+| ⌘ F | Cerca |
+| ⌘ G / ⌘ ⇧ G | Trova successivo / precedente |
+| ⌘ ⇧ F | Nascondi barra di ricerca |
+| ⌘ E | Usa selezione per la ricerca |
+
+### Terminale
+
+| Scorciatoia | Azione |
+|----------|--------|
+| ⌘ K | Cancella scrollback |
+| ⌘ C | Copia (con selezione) |
+| ⌘ V | Incolla |
+| ⌘ + / ⌘ - | Aumenta / diminuisci dimensione font |
+| ⌘ 0 | Ripristina dimensione font |
+
+### Finestra
+
+| Scorciatoia | Azione |
+|----------|--------|
+| ⌘ ⇧ N | Nuova finestra |
+| ⌘ , | Impostazioni |
+| ⌘ ⇧ R | Ricarica configurazione |
+| ⌘ Q | Esci |
+
+## Licenza
+
+Questo progetto è distribuito sotto la GNU Affero General Public License v3.0 o successiva (`AGPL-3.0-or-later`).
+
+Vedi `LICENSE` per il testo completo.
diff --git a/README.ja.md b/README.ja.md
new file mode 100644
index 00000000..f06db519
--- /dev/null
+++ b/README.ja.md
@@ -0,0 +1,148 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
++ English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe +
+ +AIコーディングエージェント向けの縦タブと通知機能を備えたGhosttyベースのmacOSターミナル
+ +
+
+
+
+
+
+
+
+
+`.dmg`ファイルを開き、cmuxをアプリケーションフォルダにドラッグしてください。cmuxはSparkle経由で自動更新されるため、ダウンロードは一度だけで済みます。
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+後で更新する場合:
+
+```bash
+brew upgrade --cask cmux
+```
+
+初回起動時、macOSが確認済みの開発者からのアプリを開くことの確認を求める場合があります。**開く**をクリックして続行してください。
+
+## なぜcmux?
+
+私はClaude CodeとCodexのセッションを多数並列で実行しています。Ghosttyで大量の分割ペインを使い、エージェントが私を必要としているときを知るためにmacOSのネイティブ通知に頼っていました。しかし、Claude Codeの通知本文はいつも「Claude is waiting for your input」というコンテキストのないものばかりで、タブを十分に開くとタイトルすら読めなくなっていました。
+
+いくつかのコーディングオーケストレーターを試しましたが、そのほとんどがElectron/Tauriアプリで、パフォーマンスが気になりました。また、GUIオーケストレーターはそのワークフローに縛られるため、単純にターミナルのほうが好みです。そこで、cmuxをSwift/AppKitのネイティブmacOSアプリとして構築しました。ターミナルレンダリングにはlibghosttyを使用し、テーマ、フォント、カラーは既存のGhostty設定を読み込みます。
+
+主な追加機能はサイドバーと通知システムです。サイドバーには、各ワークスペースのgitブランチ、作業ディレクトリ、リッスン中のポート、最新の通知テキストを表示する縦タブがあります。通知システムはターミナルシーケンス(OSC 9/99/777)を検出し、Claude Code、OpenCodeなどのエージェントフックに接続できるCLI(`cmux notify`)を備えています。エージェントが待機中のとき、そのペインに青いリングが表示され、サイドバーのタブが点灯するので、分割やタブをまたいでどれが私を必要としているかがわかります。Cmd+Shift+Uで最新の未読にジャンプします。
+
+アプリ内ブラウザには[agent-browser](https://github.com/vercel-labs/agent-browser)から移植されたスクリプタブルなAPIがあります。エージェントはアクセシビリティツリーのスナップショットを取得し、要素参照を取得し、クリック、フォーム入力、JSの評価が可能です。ターミナルの横にブラウザペインを分割し、Claude Codeに開発サーバーと直接やり取りさせることができます。
+
+すべてがCLIとsocket APIを通じてスクリプタブルです — ワークスペース/タブの作成、ペインの分割、キーストロークの送信、ブラウザでのURL表示。
+
+## キーボードショートカット
+
+### ワークスペース
+
+| ショートカット | アクション |
+|----------|--------|
+| ⌘ N | 新規ワークスペース |
+| ⌘ 1–8 | ワークスペース1–8にジャンプ |
+| ⌘ 9 | 最後のワークスペースにジャンプ |
+| ⌘ ⇧ W | ワークスペースを閉じる |
+
+### サーフェス
+
+| ショートカット | アクション |
+|----------|--------|
+| ⌘ T | 新規サーフェス |
+| ⌘ ⇧ [ | 前のサーフェス |
+| ⌃ ⇧ Tab | 前のサーフェス |
+| ⌃ 1–8 | サーフェス1–8にジャンプ |
+| ⌃ 9 | 最後のサーフェスにジャンプ |
+| ⌘ W | サーフェスを閉じる |
+
+### 分割ペイン
+
+| ショートカット | アクション |
+|----------|--------|
+| ⌘ D | 右に分割 |
+| ⌘ ⇧ D | 下に分割 |
+| ⌥ ⌘ ← → ↑ ↓ | 方向でペインにフォーカス |
+
+### ブラウザ
+
+| ショートカット | アクション |
+|----------|--------|
+| ⌘ ⇧ B | 分割でブラウザを開く |
+| ⌘ L | アドレスバーにフォーカス |
+| ⌘ ] | 進む |
+| ⌘ R | ページを再読み込み |
+| ⌥ ⌘ I | 開発者ツールを開く |
+
+### 通知
+
+| ショートカット | アクション |
+|----------|--------|
+| ⌘ ⇧ I | 通知パネルを表示 |
+| ⌘ ⇧ U | 最新の未読にジャンプ |
+
+### 検索
+
+| ショートカット | アクション |
+|----------|--------|
+| ⌘ F | 検索 |
+| ⌘ G / ⌘ ⇧ G | 次を検索 / 前を検索 |
+| ⌘ ⇧ F | 検索バーを非表示 |
+| ⌘ E | 選択範囲で検索 |
+
+### ターミナル
+
+| ショートカット | アクション |
+|----------|--------|
+| ⌘ K | スクロールバックをクリア |
+| ⌘ C | コピー(選択時) |
+| ⌘ V | ペースト |
+| ⌘ + / ⌘ - | フォントサイズを拡大 / 縮小 |
+| ⌘ 0 | フォントサイズをリセット |
+
+### ウィンドウ
+
+| ショートカット | アクション |
+|----------|--------|
+| ⌘ ⇧ N | 新規ウィンドウ |
+| ⌘ , | 設定 |
+| ⌘ ⇧ R | 設定を再読み込み |
+| ⌘ Q | 終了 |
+
+## ライセンス
+
+このプロジェクトはGNU Affero General Public License v3.0以降(`AGPL-3.0-or-later`)の下でライセンスされています。
+
+全文は`LICENSE`をご覧ください。
diff --git a/README.ko.md b/README.ko.md
new file mode 100644
index 00000000..fe48102b
--- /dev/null
+++ b/README.ko.md
@@ -0,0 +1,146 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
+English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe
+ +AI 코딩 에이전트를 위한 세로 탭과 알림 기능을 갖춘 Ghostty 기반 macOS 터미널
+ +
+
+
+
+
+
+
+
+
+`.dmg` 파일을 열고 cmux를 응용 프로그램 폴더로 드래그하세요. cmux는 Sparkle을 통해 자동 업데이트되므로, 한 번만 다운로드하면 됩니다.
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+나중에 업데이트하려면:
+
+```bash
+brew upgrade --cask cmux
+```
+
+처음 실행 시, macOS가 확인된 개발자의 앱을 여는 것을 확인하도록 요청할 수 있습니다. **열기**를 클릭하여 계속 진행하세요.
+
+## 왜 cmux를 만들었나요?
+
+저는 Claude Code와 Codex 세션을 대량으로 병렬 실행합니다. 이전에는 Ghostty에서 분할 패널을 여러 개 열어놓고, 에이전트가 저를 필요로 할 때 macOS 기본 알림에 의존했습니다. 하지만 Claude Code의 알림 내용은 항상 "Claude is waiting for your input"이라는 맥락 없는 동일한 메시지뿐이었고, 탭이 많아지면 제목조차 읽을 수 없었습니다.
+
+몇 가지 코딩 오케스트레이터를 시도해봤지만, 대부분 Electron/Tauri 앱이어서 성능이 마음에 들지 않았습니다. 또한 GUI 오케스트레이터는 특정 워크플로우에 갇히게 되므로 터미널을 더 선호합니다. 그래서 Swift/AppKit으로 네이티브 macOS 앱인 cmux를 만들었습니다. 터미널 렌더링에 libghostty를 사용하고, 기존 Ghostty 설정에서 테마, 글꼴, 색상을 읽어옵니다.
+
+주요 추가 기능은 사이드바와 알림 시스템입니다. 사이드바에는 각 워크스페이스의 git 브랜치, 작업 디렉토리, 리스닝 포트, 최신 알림 텍스트를 보여주는 세로 탭이 있습니다. 알림 시스템은 터미널 시퀀스(OSC 9/99/777)를 감지하고, Claude Code, OpenCode 등의 에이전트 훅에 연결할 수 있는 CLI(`cmux notify`)를 제공합니다. 에이전트가 대기 중일 때 해당 패널에 파란색 링이 표시되고 사이드바에서 탭이 강조되어, 여러 분할 패널과 탭에서 어떤 것이 저를 필요로 하는지 한눈에 알 수 있습니다. ⌘⇧U로 가장 최근의 읽지 않은 알림으로 이동합니다.
+
+내장 브라우저는 [agent-browser](https://github.com/vercel-labs/agent-browser)에서 포팅된 스크립트 가능한 API를 갖추고 있습니다. 에이전트가 접근성 트리 스냅샷을 가져오고, 요소 참조를 얻고, 클릭하고, 양식을 작성하고, JS를 실행할 수 있습니다. 터미널 옆에 브라우저 패널을 분할하여 Claude Code가 개발 서버와 직접 상호작용하도록 할 수 있습니다.
+
+모든 것은 CLI와 socket API를 통해 스크립트 가능합니다 — 워크스페이스/탭 생성, 패널 분할, 키 입력 전송, 브라우저에서 URL 열기.
+
+## 키보드 단축키
+
+### 워크스페이스
+
+| 단축키 | 동작 |
+|----------|--------|
+| ⌘ N | 새 워크스페이스 |
+| ⌘ 1–8 | 워크스페이스 1–8로 이동 |
+| ⌘ 9 | 마지막 워크스페이스로 이동 |
+| ⌘ ⇧ W | 워크스페이스 닫기 |
+
+### 서피스
+
+| 단축키 | 동작 |
+|----------|--------|
+| ⌘ T | 새 서피스 |
+| ⌘ ⇧ [ | 이전 서피스 |
+| ⌃ ⇧ Tab | 이전 서피스 |
+| ⌃ 1–8 | 서피스 1–8로 이동 |
+| ⌃ 9 | 마지막 서피스로 이동 |
+| ⌘ W | 서피스 닫기 |
+
+### 분할 패널
+
+| 단축키 | 동작 |
+|----------|--------|
+| ⌘ D | 오른쪽으로 분할 |
+| ⌘ ⇧ D | 아래로 분할 |
+| ⌥ ⌘ ← → ↑ ↓ | 방향키로 패널 포커스 이동 |
+
+### 브라우저
+
+| 단축키 | 동작 |
+|----------|--------|
+| ⌘ ⇧ B | 분할에서 브라우저 열기 |
+| ⌘ L | 주소창 포커스 |
+| ⌘ ] | 앞으로 |
+| ⌘ R | 페이지 새로고침 |
+| ⌥ ⌘ I | 개발자 도구 열기 |
+
+### 알림
+
+| 단축키 | 동작 |
+|----------|--------|
+| ⌘ ⇧ I | 알림 패널 표시 |
+| ⌘ ⇧ U | 최신 읽지 않은 알림으로 이동 |
+
+### 찾기
+
+| 단축키 | 동작 |
+|----------|--------|
+| ⌘ F | 찾기 |
+| ⌘ G / ⌘ ⇧ G | 다음 찾기 / 이전 찾기 |
+| ⌘ ⇧ F | 찾기 바 숨기기 |
+| ⌘ E | 선택 영역으로 찾기 |
+
+### 터미널
+
+| 단축키 | 동작 |
+|----------|--------|
+| ⌘ K | 스크롤백 지우기 |
+| ⌘ C | 복사 (선택 시) |
+| ⌘ V | 붙여넣기 |
+| ⌘ + / ⌘ - | 글꼴 크기 확대 / 축소 |
+| ⌘ 0 | 글꼴 크기 초기화 |
+
+### 창
+
+| 단축키 | 동작 |
+|----------|--------|
+| ⌘ ⇧ N | 새 창 |
+| ⌘ , | 설정 |
+| ⌘ ⇧ R | 설정 다시 불러오기 |
+| ⌘ Q | 종료 |
+
+## 라이선스
+
+이 프로젝트는 GNU Affero 일반 공중 사용 허가서 v3.0 이상(`AGPL-3.0-or-later`)에 따라 라이선스가 부여됩니다.
+
+전체 라이선스 텍스트는 `LICENSE` 파일을 참조하세요.
diff --git a/README.md b/README.md
index 50ea4615..0e9e012e 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,7 @@
++ English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe +
+A Ghostty-based macOS terminal with vertical tabs and notifications for AI coding agents
diff --git a/README.no.md b/README.no.md new file mode 100644 index 00000000..a3b38ac6 --- /dev/null +++ b/README.no.md @@ -0,0 +1,148 @@ +> This translation was generated by Claude. If you have suggestions for improvement, please file a PR. + ++ English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe +
+ +En Ghostty-basert macOS-terminal med vertikale faner og varsler for AI-kodeagenter
+ +
+
+
+
+
+
+
+
+
+Apne `.dmg`-filen og dra cmux til Programmer-mappen. cmux oppdaterer seg selv automatisk via Sparkle, sa du trenger bare a laste ned en gang.
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+For a oppdatere senere:
+
+```bash
+brew upgrade --cask cmux
+```
+
+Ved forste oppstart kan macOS be deg bekrefte apning av en app fra en identifisert utvikler. Klikk **Apne** for a fortsette.
+
+## Hvorfor cmux?
+
+Jeg kjorer mange Claude Code- og Codex-sesjoner parallelt. Jeg brukte Ghostty med en haug delte paneler, og stolte pa native macOS-varsler for a vite nar en agent trengte meg. Men Claude Codes varselstekst er alltid bare "Claude is waiting for your input" uten kontekst, og med nok faner apne kunne jeg ikke engang lese titlene lenger.
+
+Jeg provde noen kodeorkestratorer, men de fleste var Electron/Tauri-apper og ytelsen irriterte meg. Jeg foretrekker ogsa terminalen siden GUI-orkestratorer laser deg inn i arbeidsflyten deres. Sa jeg bygde cmux som en nativ macOS-app i Swift/AppKit. Den bruker libghostty for terminalgjengivelse og leser din eksisterende Ghostty-konfigurasjon for temaer, skrifttyper og farger.
+
+Hovedtilleggene er sidefeltet og varselsystemet. Sidefeltet har vertikale faner som viser git-gren, arbeidsmappe, lyttende porter og siste varselstekst for hvert arbeidsomrade. Varselsystemet fanger opp terminalsekvenser (OSC 9/99/777) og har en CLI (`cmux notify`) du kan koble til agentkroker for Claude Code, OpenCode osv. Nar en agent venter, far panelet en bla ring og fanen lyser opp i sidefeltet, sa jeg kan se hvilken som trenger meg pa tvers av delinger og faner. Cmd+Shift+U hopper til det nyeste uleste.
+
+Den innebygde nettleseren har et skriptbart API portet fra [agent-browser](https://github.com/vercel-labs/agent-browser). Agenter kan ta overblikk over tilgjengelighetstreet, hente elementreferanser, klikke, fylle ut skjemaer og kjore JS. Du kan dele et nettleserpanel ved siden av terminalen og la Claude Code samhandle med utviklingsserveren din direkte.
+
+Alt er skriptbart gjennom CLI og socket API — opprett arbeidsomrader/faner, del paneler, send tastetrykk, apne URLer i nettleseren.
+
+## Tastatursnarveier
+
+### Arbeidsomrader
+
+| Snarvei | Handling |
+|----------|--------|
+| ⌘ N | Nytt arbeidsomrade |
+| ⌘ 1–8 | Hopp til arbeidsomrade 1–8 |
+| ⌘ 9 | Hopp til siste arbeidsomrade |
+| ⌘ ⇧ W | Lukk arbeidsomrade |
+
+### Overflater
+
+| Snarvei | Handling |
+|----------|--------|
+| ⌘ T | Ny overflate |
+| ⌘ ⇧ [ | Forrige overflate |
+| ⌃ ⇧ Tab | Forrige overflate |
+| ⌃ 1–8 | Hopp til overflate 1–8 |
+| ⌃ 9 | Hopp til siste overflate |
+| ⌘ W | Lukk overflate |
+
+### Delte paneler
+
+| Snarvei | Handling |
+|----------|--------|
+| ⌘ D | Del til hoyre |
+| ⌘ ⇧ D | Del nedover |
+| ⌥ ⌘ ← → ↑ ↓ | Fokuser panel i retning |
+
+### Nettleser
+
+| Snarvei | Handling |
+|----------|--------|
+| ⌘ ⇧ B | Apne nettleser i deling |
+| ⌘ L | Fokuser adressefeltet |
+| ⌘ ] | Fremover |
+| ⌘ R | Last inn siden pa nytt |
+| ⌥ ⌘ I | Apne utviklerverktoy |
+
+### Varsler
+
+| Snarvei | Handling |
+|----------|--------|
+| ⌘ ⇧ I | Vis varselpanel |
+| ⌘ ⇧ U | Hopp til nyeste uleste |
+
+### Sok
+
+| Snarvei | Handling |
+|----------|--------|
+| ⌘ F | Sok |
+| ⌘ G / ⌘ ⇧ G | Sok neste / forrige |
+| ⌘ ⇧ F | Skjul sokelinje |
+| ⌘ E | Bruk utvalg til sok |
+
+### Terminal
+
+| Snarvei | Handling |
+|----------|--------|
+| ⌘ K | Tøm rullingshistorikk |
+| ⌘ C | Kopier (med utvalg) |
+| ⌘ V | Lim inn |
+| ⌘ + / ⌘ - | Øk / reduser skriftstørrelse |
+| ⌘ 0 | Tilbakestill skriftstørrelse |
+
+### Vindu
+
+| Snarvei | Handling |
+|----------|--------|
+| ⌘ ⇧ N | Nytt vindu |
+| ⌘ , | Innstillinger |
+| ⌘ ⇧ R | Last inn konfigurasjon pa nytt |
+| ⌘ Q | Avslutt |
+
+## Lisens
+
+Dette prosjektet er lisensiert under GNU Affero General Public License v3.0 eller nyere (`AGPL-3.0-or-later`).
+
+Se `LICENSE` for den fullstendige teksten.
diff --git a/README.pl.md b/README.pl.md
new file mode 100644
index 00000000..8aca7850
--- /dev/null
+++ b/README.pl.md
@@ -0,0 +1,148 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
++ English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe +
+ +Terminal macOS oparty na Ghostty z pionowymi kartami i powiadomieniami dla agentów kodowania AI
+ +
+
+
+
+
+
+
+
+
+Otwórz plik `.dmg` i przeciągnij cmux do folderu Aplikacje. cmux aktualizuje się automatycznie przez Sparkle, więc musisz pobrać go tylko raz.
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+Aby zaktualizować później:
+
+```bash
+brew upgrade --cask cmux
+```
+
+Przy pierwszym uruchomieniu macOS może poprosić o potwierdzenie otwarcia aplikacji od zidentyfikowanego dewelopera. Kliknij **Otwórz**, aby kontynuować.
+
+## Dlaczego cmux?
+
+Uruchamiam wiele sesji Claude Code i Codex równolegle. Używałem Ghostty z masą podzielonych paneli i polegałem na natywnych powiadomieniach macOS, żeby wiedzieć, kiedy agent mnie potrzebuje. Ale treść powiadomienia Claude Code to zawsze tylko „Claude is waiting for your input" bez kontekstu, a przy wystarczającej liczbie otwartych kart nie mogłem nawet przeczytać tytułów.
+
+Wypróbowałem kilka orkiestratorów kodowania, ale większość z nich to aplikacje Electron/Tauri, a ich wydajność mi przeszkadzała. Po prostu wolę też terminal, ponieważ orkiestratory GUI zamykają cię w swoim przepływie pracy. Dlatego zbudowałem cmux jako natywną aplikację macOS w Swift/AppKit. Używa libghostty do renderowania terminala i odczytuje istniejącą konfigurację Ghostty dla motywów, czcionek i kolorów.
+
+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 tekst ostatniego powiadomienia dla każdej przestrzeni roboczej. System powiadomień przechwytuje sekwencje terminala (OSC 9/99/777) i ma CLI (`cmux notify`), który można podpiąć do hooków agentów dla Claude Code, OpenCode itp. Gdy agent czeka, jego panel otrzymuje niebieski pierścień, a karta podświetla się w pasku bocznym, więc mogę powiedzieć, który mnie potrzebuje, niezależnie od podziałów i kart. Cmd+Shift+U przeskakuje do najnowszego nieprzeczytanego.
+
+Wbudowana przeglądarka ma skryptowalny API przeniesiony z [agent-browser](https://github.com/vercel-labs/agent-browser). Agenci mogą wykonać migawkę drzewa dostępności, uzyskać referencje elementów, klikać, wypełniać formularze i ewaluować JS. Możesz podzielić panel przeglądarki obok terminala i pozwolić Claude Code bezpośrednio komunikować się z Twoim serwerem deweloperskim.
+
+Wszystko jest skryptowalne przez CLI i socket API — tworzenie przestrzeni roboczych/kart, dzielenie paneli, wysyłanie naciśnięć klawiszy, otwieranie URL-ów w przeglądarce.
+
+## Skróty Klawiszowe
+
+### Przestrzenie robocze
+
+| Skrót | Akcja |
+|----------|--------|
+| ⌘ N | Nowa przestrzeń robocza |
+| ⌘ 1–8 | Przejdź do przestrzeni roboczej 1–8 |
+| ⌘ 9 | Przejdź do ostatniej przestrzeni roboczej |
+| ⌘ ⇧ W | Zamknij przestrzeń roboczą |
+
+### Powierzchnie
+
+| Skrót | Akcja |
+|----------|--------|
+| ⌘ T | Nowa powierzchnia |
+| ⌘ ⇧ [ | Poprzednia powierzchnia |
+| ⌃ ⇧ Tab | Poprzednia powierzchnia |
+| ⌃ 1–8 | Przejdź do powierzchni 1–8 |
+| ⌃ 9 | Przejdź do ostatniej powierzchni |
+| ⌘ W | Zamknij powierzchnię |
+
+### Podzielone Panele
+
+| Skrót | Akcja |
+|----------|--------|
+| ⌘ D | Podziel w prawo |
+| ⌘ ⇧ D | Podziel w dół |
+| ⌥ ⌘ ← → ↑ ↓ | Fokus panelu kierunkowo |
+
+### Przeglądarka
+
+| Skrót | Akcja |
+|----------|--------|
+| ⌘ ⇧ B | Otwórz przeglądarkę w podziale |
+| ⌘ L | Fokus na pasku adresu |
+| ⌘ ] | Do przodu |
+| ⌘ R | Przeładuj stronę |
+| ⌥ ⌘ I | Otwórz Narzędzia Deweloperskie |
+
+### Powiadomienia
+
+| Skrót | Akcja |
+|----------|--------|
+| ⌘ ⇧ I | Pokaż panel powiadomień |
+| ⌘ ⇧ U | Przejdź do najnowszego nieprzeczytanego |
+
+### Szukaj
+
+| Skrót | Akcja |
+|----------|--------|
+| ⌘ F | Szukaj |
+| ⌘ G / ⌘ ⇧ G | Znajdź następny / poprzedni |
+| ⌘ ⇧ F | Ukryj pasek wyszukiwania |
+| ⌘ E | Użyj zaznaczenia do wyszukiwania |
+
+### Terminal
+
+| Skrót | Akcja |
+|----------|--------|
+| ⌘ K | Wyczyść scrollback |
+| ⌘ C | Kopiuj (z zaznaczeniem) |
+| ⌘ V | Wklej |
+| ⌘ + / ⌘ - | Zwiększ / zmniejsz rozmiar czcionki |
+| ⌘ 0 | Resetuj rozmiar czcionki |
+
+### Okno
+
+| Skrót | Akcja |
+|----------|--------|
+| ⌘ ⇧ N | Nowe okno |
+| ⌘ , | Ustawienia |
+| ⌘ ⇧ R | Przeładuj konfigurację |
+| ⌘ Q | Zakończ |
+
+## Licencja
+
+Ten projekt jest licencjonowany na warunkach GNU Affero General Public License v3.0 lub nowszej (`AGPL-3.0-or-later`).
+
+Pełny tekst znajduje się w pliku `LICENSE`.
diff --git a/README.pt-BR.md b/README.pt-BR.md
new file mode 100644
index 00000000..f5df5cdd
--- /dev/null
+++ b/README.pt-BR.md
@@ -0,0 +1,148 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
++ English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe +
+ +Um terminal macOS baseado em Ghostty com abas verticais e notificações para agentes de programação com IA
+ +
+
+
+
+
+
+
+
+
+Abra o `.dmg` e arraste o cmux para a pasta Aplicativos. O cmux se atualiza automaticamente via Sparkle, então você só precisa baixar uma vez.
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+Para atualizar depois:
+
+```bash
+brew upgrade --cask cmux
+```
+
+Na primeira execução, o macOS pode pedir para você confirmar a abertura de um app de um desenvolvedor identificado. Clique em **Abrir** para continuar.
+
+## Por que o cmux?
+
+Eu executo muitas sessões de Claude Code e Codex em paralelo. Eu estava usando o Ghostty com vários painéis divididos e contando com as notificações nativas do macOS para saber quando um agente precisava de mim. Mas o corpo da notificação do Claude Code é sempre apenas "Claude is waiting for your input" sem contexto, e com abas suficientes abertas eu não conseguia nem ler os títulos mais.
+
+Eu tentei alguns orquestradores de código, mas a maioria era apps Electron/Tauri e o desempenho me incomodava. Eu também prefiro o terminal, já que orquestradores GUI te prendem no fluxo de trabalho deles. Então eu construí o cmux como um app nativo macOS em Swift/AppKit. Ele usa o libghostty para renderização do terminal e lê sua configuração existente do Ghostty para temas, fontes e cores.
+
+As principais adições são a barra lateral e o sistema de notificações. A barra lateral tem abas verticais que mostram o branch do git, diretório de trabalho, portas em escuta e o texto da última notificação para cada workspace. O sistema de notificações captura sequências do terminal (OSC 9/99/777) e tem uma CLI (`cmux notify`) que você pode conectar aos hooks de agentes para Claude Code, OpenCode, etc. Quando um agente está esperando, seu painel recebe um anel azul e a aba acende na barra lateral, para que eu possa ver qual precisa de mim entre divisões e abas. Cmd+Shift+U pula para o mais recente não lido.
+
+O navegador integrado tem uma API programável portada do [agent-browser](https://github.com/vercel-labs/agent-browser). Agentes podem capturar a árvore de acessibilidade, obter referências de elementos, clicar, preencher formulários e executar JS. Você pode dividir um painel de navegador ao lado do seu terminal e fazer o Claude Code interagir diretamente com seu servidor de desenvolvimento.
+
+Tudo é programável através da CLI e socket API — criar workspaces/abas, dividir painéis, enviar teclas, abrir URLs no navegador.
+
+## Atalhos de Teclado
+
+### Workspaces
+
+| Atalho | Ação |
+|----------|--------|
+| ⌘ N | Novo workspace |
+| ⌘ 1–8 | Ir para workspace 1–8 |
+| ⌘ 9 | Ir para último workspace |
+| ⌘ ⇧ W | Fechar workspace |
+
+### Surfaces
+
+| Atalho | Ação |
+|----------|--------|
+| ⌘ T | Nova surface |
+| ⌘ ⇧ [ | Surface anterior |
+| ⌃ ⇧ Tab | Surface anterior |
+| ⌃ 1–8 | Ir para surface 1–8 |
+| ⌃ 9 | Ir para última surface |
+| ⌘ W | Fechar surface |
+
+### Painéis Divididos
+
+| Atalho | Ação |
+|----------|--------|
+| ⌘ D | Dividir à direita |
+| ⌘ ⇧ D | Dividir para baixo |
+| ⌥ ⌘ ← → ↑ ↓ | Focar painel direcionalmente |
+
+### Navegador
+
+| Atalho | Ação |
+|----------|--------|
+| ⌘ ⇧ B | Abrir navegador em divisão |
+| ⌘ L | Focar barra de endereço |
+| ⌘ ] | Avançar |
+| ⌘ R | Recarregar página |
+| ⌥ ⌘ I | Abrir Ferramentas do Desenvolvedor |
+
+### Notificações
+
+| Atalho | Ação |
+|----------|--------|
+| ⌘ ⇧ I | Mostrar painel de notificações |
+| ⌘ ⇧ U | Ir para última não lida |
+
+### Busca
+
+| Atalho | Ação |
+|----------|--------|
+| ⌘ F | Buscar |
+| ⌘ G / ⌘ ⇧ G | Buscar próximo / anterior |
+| ⌘ ⇧ F | Ocultar barra de busca |
+| ⌘ E | Usar seleção para busca |
+
+### Terminal
+
+| Atalho | Ação |
+|----------|--------|
+| ⌘ K | Limpar histórico de rolagem |
+| ⌘ C | Copiar (com seleção) |
+| ⌘ V | Colar |
+| ⌘ + / ⌘ - | Aumentar / diminuir tamanho da fonte |
+| ⌘ 0 | Redefinir tamanho da fonte |
+
+### Janela
+
+| Atalho | Ação |
+|----------|--------|
+| ⌘ ⇧ N | Nova janela |
+| ⌘ , | Configurações |
+| ⌘ ⇧ R | Recarregar configuração |
+| ⌘ Q | Sair |
+
+## Licença
+
+Este projeto é licenciado sob a GNU Affero General Public License v3.0 ou posterior (`AGPL-3.0-or-later`).
+
+Veja `LICENSE` para o texto completo.
diff --git a/README.ru.md b/README.ru.md
new file mode 100644
index 00000000..7718974e
--- /dev/null
+++ b/README.ru.md
@@ -0,0 +1,148 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
++ English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe +
+ +Терминал macOS на базе Ghostty с вертикальными вкладками и уведомлениями для AI-агентов программирования
+ +
+
+
+
+
+
+
+
+
+Откройте файл `.dmg` и перетащите cmux в папку «Программы». cmux автоматически обновляется через Sparkle, поэтому скачивание требуется только один раз.
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+Для обновления в дальнейшем:
+
+```bash
+brew upgrade --cask cmux
+```
+
+При первом запуске macOS может попросить вас подтвердить открытие приложения от идентифицированного разработчика. Нажмите **Открыть**, чтобы продолжить.
+
+## Почему cmux?
+
+Я запускаю множество сессий Claude Code и Codex параллельно. Я использовал Ghostty с кучей разделённых панелей и полагался на нативные уведомления macOS, чтобы знать, когда агент нуждается во мне. Но тело уведомления Claude Code — это всегда просто «Claude is waiting for your input» без контекста, а при достаточном количестве открытых вкладок я даже не мог прочитать заголовки.
+
+Я попробовал несколько оркестраторов для кодирования, но большинство из них были приложениями Electron/Tauri, и их производительность меня раздражала. К тому же я просто предпочитаю терминал, поскольку GUI-оркестраторы привязывают вас к своему рабочему процессу. Поэтому я создал cmux как нативное приложение macOS на Swift/AppKit. Оно использует libghostty для рендеринга терминала и читает вашу существующую конфигурацию Ghostty для тем, шрифтов и цветов.
+
+Основные дополнения — это боковая панель и система уведомлений. Боковая панель имеет вертикальные вкладки, которые показывают ветку git, рабочий каталог, прослушиваемые порты и текст последнего уведомления для каждого рабочего пространства. Система уведомлений перехватывает терминальные последовательности (OSC 9/99/777) и имеет CLI (`cmux notify`), который можно подключить к хукам агентов для Claude Code, OpenCode и т.д. Когда агент ожидает, его панель получает синее кольцо, а вкладка подсвечивается в боковой панели, так что я могу определить, какой из них нуждается во мне, среди разделений и вкладок. Cmd+Shift+U переходит к последнему непрочитанному.
+
+Встроенный браузер имеет скриптуемый API, портированный из [agent-browser](https://github.com/vercel-labs/agent-browser). Агенты могут делать снимок дерева доступности, получать ссылки на элементы, кликать, заполнять формы и выполнять JS. Вы можете разделить панель браузера рядом с терминалом и позволить Claude Code взаимодействовать с вашим сервером разработки напрямую.
+
+Всё скриптуемо через CLI и socket API — создание рабочих пространств/вкладок, разделение панелей, отправка нажатий клавиш, открытие URL в браузере.
+
+## Сочетания Клавиш
+
+### Рабочие пространства
+
+| Сочетание | Действие |
+|----------|--------|
+| ⌘ N | Новое рабочее пространство |
+| ⌘ 1–8 | Перейти к рабочему пространству 1–8 |
+| ⌘ 9 | Перейти к последнему рабочему пространству |
+| ⌘ ⇧ W | Закрыть рабочее пространство |
+
+### Поверхности
+
+| Сочетание | Действие |
+|----------|--------|
+| ⌘ T | Новая поверхность |
+| ⌘ ⇧ [ | Предыдущая поверхность |
+| ⌃ ⇧ Tab | Предыдущая поверхность |
+| ⌃ 1–8 | Перейти к поверхности 1–8 |
+| ⌃ 9 | Перейти к последней поверхности |
+| ⌘ W | Закрыть поверхность |
+
+### Разделённые Панели
+
+| Сочетание | Действие |
+|----------|--------|
+| ⌘ D | Разделить вправо |
+| ⌘ ⇧ D | Разделить вниз |
+| ⌥ ⌘ ← → ↑ ↓ | Фокус панели по направлению |
+
+### Браузер
+
+| Сочетание | Действие |
+|----------|--------|
+| ⌘ ⇧ B | Открыть браузер в разделении |
+| ⌘ L | Фокус на адресной строке |
+| ⌘ ] | Вперёд |
+| ⌘ R | Перезагрузить страницу |
+| ⌥ ⌘ I | Открыть Инструменты Разработчика |
+
+### Уведомления
+
+| Сочетание | Действие |
+|----------|--------|
+| ⌘ ⇧ I | Показать панель уведомлений |
+| ⌘ ⇧ U | Перейти к последнему непрочитанному |
+
+### Поиск
+
+| Сочетание | Действие |
+|----------|--------|
+| ⌘ F | Поиск |
+| ⌘ G / ⌘ ⇧ G | Найти следующий / предыдущий |
+| ⌘ ⇧ F | Скрыть панель поиска |
+| ⌘ E | Использовать выделение для поиска |
+
+### Терминал
+
+| Сочетание | Действие |
+|----------|--------|
+| ⌘ K | Очистить scrollback |
+| ⌘ C | Копировать (с выделением) |
+| ⌘ V | Вставить |
+| ⌘ + / ⌘ - | Увеличить / уменьшить размер шрифта |
+| ⌘ 0 | Сбросить размер шрифта |
+
+### Окно
+
+| Сочетание | Действие |
+|----------|--------|
+| ⌘ ⇧ N | Новое окно |
+| ⌘ , | Настройки |
+| ⌘ ⇧ R | Перезагрузить конфигурацию |
+| ⌘ Q | Выход |
+
+## Лицензия
+
+Этот проект лицензирован под GNU Affero General Public License v3.0 или более поздней версии (`AGPL-3.0-or-later`).
+
+Полный текст см. в файле `LICENSE`.
diff --git a/README.th.md b/README.th.md
new file mode 100644
index 00000000..ea45749e
--- /dev/null
+++ b/README.th.md
@@ -0,0 +1,148 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
++ English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe +
+ +เทอร์มินัล macOS ที่ใช้ Ghostty พร้อมแท็บแนวตั้งและการแจ้งเตือนสำหรับเอเจนต์เขียนโค้ด AI
+ +
+
+
+
+
+
+
+
+
+เปิดไฟล์ `.dmg` แล้วลาก cmux ไปยังโฟลเดอร์แอปพลิเคชัน cmux อัปเดตอัตโนมัติผ่าน Sparkle คุณจึงต้องดาวน์โหลดเพียงครั้งเดียว
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+สำหรับอัปเดตในภายหลัง:
+
+```bash
+brew upgrade --cask cmux
+```
+
+เมื่อเปิดใช้งานครั้งแรก macOS อาจขอให้คุณยืนยันการเปิดแอปจากนักพัฒนาที่ได้รับการระบุตัวตน คลิก **เปิด** เพื่อดำเนินการต่อ
+
+## ทำไมต้อง cmux?
+
+ผมรันเซสชัน Claude Code และ Codex จำนวนมากพร้อมกัน ผมใช้ Ghostty กับแผงแบ่งหลายอัน และพึ่งพาการแจ้งเตือนดั้งเดิมของ macOS เพื่อรู้ว่าเมื่อไหร่ที่เอเจนต์ต้องการผม แต่ข้อความแจ้งเตือนของ Claude Code มีแค่ "Claude is waiting for your input" โดยไม่มีบริบท และเมื่อเปิดแท็บมากพอ ผมไม่สามารถอ่านชื่อแท็บได้เลย
+
+ผมลองใช้ออร์เคสเตรเตอร์สำหรับเขียนโค้ดบางตัว แต่ส่วนใหญ่เป็นแอป Electron/Tauri และประสิทธิภาพทำให้ผมรำคาญ ผมยังชอบเทอร์มินัลมากกว่าเพราะออร์เคสเตรเตอร์ GUI บังคับให้คุณใช้เวิร์กโฟลว์ของมัน ผมจึงสร้าง cmux เป็นแอป macOS ดั้งเดิมด้วย Swift/AppKit มันใช้ libghostty สำหรับการแสดงผลเทอร์มินัลและอ่านการตั้งค่า Ghostty ที่มีอยู่ของคุณสำหรับธีม ฟอนต์ และสี
+
+สิ่งที่เพิ่มเติมหลักคือแถบด้านข้างและระบบแจ้งเตือน แถบด้านข้างมีแท็บแนวตั้งที่แสดง git branch, ไดเรกทอรีทำงาน, พอร์ตที่กำลังฟัง และข้อความแจ้งเตือนล่าสุดสำหรับแต่ละเวิร์กสเปซ ระบบแจ้งเตือนจับลำดับเทอร์มินัล (OSC 9/99/777) และมี CLI (`cmux notify`) ที่คุณสามารถเชื่อมต่อกับ hook ของเอเจนต์สำหรับ Claude Code, OpenCode เป็นต้น เมื่อเอเจนต์กำลังรอ แผงของมันจะมีวงแหวนสีน้ำเงินและแท็บจะสว่างขึ้นในแถบด้านข้าง เพื่อให้ผมบอกได้ว่าอันไหนต้องการผมข้ามแผงแบ่งและแท็บต่าง ๆ Cmd+Shift+U ข้ามไปยังรายการที่ยังไม่ได้อ่านล่าสุด
+
+เบราว์เซอร์ในแอปมี API ที่เขียนสคริปต์ได้ ย้ายมาจาก [agent-browser](https://github.com/vercel-labs/agent-browser) เอเจนต์สามารถจับภาพ accessibility tree, รับ element refs, คลิก, กรอกฟอร์ม และรัน JS ได้ คุณสามารถแบ่งแผงเบราว์เซอร์ข้างเทอร์มินัลและให้ Claude Code โต้ตอบกับเซิร์ฟเวอร์สำหรับพัฒนาของคุณโดยตรง
+
+ทุกอย่างเขียนสคริปต์ได้ผ่าน CLI และ socket API — สร้างเวิร์กสเปซ/แท็บ แบ่งแผง ส่งการกดแป้นพิมพ์ เปิด URL ในเบราว์เซอร์
+
+## ปุ่มลัด
+
+### เวิร์กสเปซ
+
+| ปุ่มลัด | การทำงาน |
+|----------|--------|
+| ⌘ N | เวิร์กสเปซใหม่ |
+| ⌘ 1–8 | ข้ามไปเวิร์กสเปซ 1–8 |
+| ⌘ 9 | ข้ามไปเวิร์กสเปซสุดท้าย |
+| ⌘ ⇧ W | ปิดเวิร์กสเปซ |
+
+### Surfaces
+
+| ปุ่มลัด | การทำงาน |
+|----------|--------|
+| ⌘ T | Surface ใหม่ |
+| ⌘ ⇧ [ | Surface ก่อนหน้า |
+| ⌃ ⇧ Tab | Surface ก่อนหน้า |
+| ⌃ 1–8 | ข้ามไป surface 1–8 |
+| ⌃ 9 | ข้ามไป surface สุดท้าย |
+| ⌘ W | ปิด surface |
+
+### แผงแบ่ง
+
+| ปุ่มลัด | การทำงาน |
+|----------|--------|
+| ⌘ D | แบ่งไปทางขวา |
+| ⌘ ⇧ D | แบ่งลงล่าง |
+| ⌥ ⌘ ← → ↑ ↓ | โฟกัสแผงตามทิศทาง |
+
+### เบราว์เซอร์
+
+| ปุ่มลัด | การทำงาน |
+|----------|--------|
+| ⌘ ⇧ B | เปิดเบราว์เซอร์ในแผงแบ่ง |
+| ⌘ L | โฟกัสแถบที่อยู่ |
+| ⌘ ] | ไปข้างหน้า |
+| ⌘ R | โหลดหน้าใหม่ |
+| ⌥ ⌘ I | เปิดเครื่องมือสำหรับนักพัฒนา |
+
+### การแจ้งเตือน
+
+| ปุ่มลัด | การทำงาน |
+|----------|--------|
+| ⌘ ⇧ I | แสดงแผงแจ้งเตือน |
+| ⌘ ⇧ U | ข้ามไปยังรายการที่ยังไม่ได้อ่านล่าสุด |
+
+### ค้นหา
+
+| ปุ่มลัด | การทำงาน |
+|----------|--------|
+| ⌘ F | ค้นหา |
+| ⌘ G / ⌘ ⇧ G | ค้นหาถัดไป / ก่อนหน้า |
+| ⌘ ⇧ F | ซ่อนแถบค้นหา |
+| ⌘ E | ใช้ส่วนที่เลือกสำหรับค้นหา |
+
+### เทอร์มินัล
+
+| ปุ่มลัด | การทำงาน |
+|----------|--------|
+| ⌘ K | ล้างประวัติการเลื่อน |
+| ⌘ C | คัดลอก (เมื่อเลือกข้อความ) |
+| ⌘ V | วาง |
+| ⌘ + / ⌘ - | เพิ่ม / ลดขนาดฟอนต์ |
+| ⌘ 0 | รีเซ็ตขนาดฟอนต์ |
+
+### หน้าต่าง
+
+| ปุ่มลัด | การทำงาน |
+|----------|--------|
+| ⌘ ⇧ N | หน้าต่างใหม่ |
+| ⌘ , | การตั้งค่า |
+| ⌘ ⇧ R | โหลดการตั้งค่าใหม่ |
+| ⌘ Q | ออก |
+
+## สัญญาอนุญาต
+
+โปรเจกต์นี้อยู่ภายใต้สัญญาอนุญาต GNU Affero General Public License v3.0 หรือใหม่กว่า (`AGPL-3.0-or-later`)
+
+ดู `LICENSE` สำหรับข้อความฉบับเต็ม
diff --git a/README.tr.md b/README.tr.md
new file mode 100644
index 00000000..efe47cdb
--- /dev/null
+++ b/README.tr.md
@@ -0,0 +1,148 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
++ English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe +
+ +AI kodlama ajanları için dikey sekmeler ve bildirimler içeren Ghostty tabanlı macOS terminali
+ +
+
+
+
+
+
+
+
+
+`.dmg` dosyasını açın ve cmux'u Uygulamalar klasörüne sürükleyin. cmux Sparkle aracılığıyla otomatik güncellenir, bu yüzden yalnızca bir kez indirmeniz yeterlidir.
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+Daha sonra güncellemek için:
+
+```bash
+brew upgrade --cask cmux
+```
+
+İlk açılışta macOS, tanımlanmış bir geliştiriciden gelen bir uygulamayı açmayı onaylamanızı isteyebilir. Devam etmek için **Aç**'a tıklayın.
+
+## Neden cmux?
+
+Birçok Claude Code ve Codex oturumunu paralel olarak çalıştırıyorum. Ghostty'yi bir sürü bölünmüş panelle kullanıyor ve bir ajanın bana ne zaman ihtiyacı olduğunu anlamak için yerel macOS bildirimlerine güveniyordum. Ancak Claude Code'un bildirim metni her zaman sadece "Claude is waiting for your input" oluyor, hiçbir bağlam yok ve yeterince sekme açıkken başlıkları bile okuyamıyordum artık.
+
+Birkaç kodlama orkestratörü denedim ama çoğu Electron/Tauri uygulamasıydı ve performansları beni rahatsız ediyordu. Ayrıca terminali tercih ediyorum çünkü GUI orkestratörleri sizi kendi iş akışlarına kilitliyor. Bu yüzden cmux'u Swift/AppKit'te yerel bir macOS uygulaması olarak geliştirdim. Terminal görüntüleme için libghostty kullanıyor ve temalar, yazı tipleri ve renkler için mevcut Ghostty yapılandırmanızı okuyor.
+
+Ana eklemeler kenar çubuğu ve bildirim sistemi. Kenar çubuğunda her çalışma alanı için git dalını, çalışma dizinini, dinlenen portları ve en son bildirim metnini gösteren dikey sekmeler var. Bildirim sistemi terminal dizilerini (OSC 9/99/777) yakalıyor ve Claude Code, OpenCode vb. için ajan kancalarına bağlayabileceğiniz bir CLI'ye (`cmux notify`) sahip. Bir ajan beklerken paneli mavi bir halka alıyor ve sekme kenar çubuğunda yanıyor, böylece bölmeler ve sekmeler arasında hangisinin bana ihtiyacı olduğunu görebiliyorum. Cmd+Shift+U en son okunmamışa atlıyor.
+
+Uygulama içi tarayıcının [agent-browser](https://github.com/vercel-labs/agent-browser)'dan aktarılmış betiklenebilir bir API'si var. Ajanlar erişilebilirlik ağacının anlık görüntüsünü alabilir, öğe referansları elde edebilir, tıklayabilir, formları doldurabilir ve JS çalıştırabilir. Terminalinizin yanında bir tarayıcı paneli bölebilir ve Claude Code'un geliştirme sunucunuzla doğrudan etkileşime girmesini sağlayabilirsiniz.
+
+Her şey CLI ve socket API aracılığıyla betiklenebilir — çalışma alanları/sekmeler oluşturun, panelleri bölün, tuş vuruşları gönderin, tarayıcıda URL'ler açın.
+
+## Klavye Kısayolları
+
+### Çalışma Alanları
+
+| Kısayol | Eylem |
+|----------|--------|
+| ⌘ N | Yeni çalışma alanı |
+| ⌘ 1–8 | Çalışma alanı 1–8'e atla |
+| ⌘ 9 | Son çalışma alanına atla |
+| ⌘ ⇧ W | Çalışma alanını kapat |
+
+### Surfaces
+
+| Kısayol | Eylem |
+|----------|--------|
+| ⌘ T | Yeni surface |
+| ⌘ ⇧ [ | Önceki surface |
+| ⌃ ⇧ Tab | Önceki surface |
+| ⌃ 1–8 | Surface 1–8'e atla |
+| ⌃ 9 | Son surface'e atla |
+| ⌘ W | Surface'i kapat |
+
+### Bölünmüş Paneller
+
+| Kısayol | Eylem |
+|----------|--------|
+| ⌘ D | Sağa böl |
+| ⌘ ⇧ D | Aşağı böl |
+| ⌥ ⌘ ← → ↑ ↓ | Yönlü panel odaklama |
+
+### Tarayıcı
+
+| Kısayol | Eylem |
+|----------|--------|
+| ⌘ ⇧ B | Bölmede tarayıcı aç |
+| ⌘ L | Adres çubuğuna odaklan |
+| ⌘ ] | İleri |
+| ⌘ R | Sayfayı yeniden yükle |
+| ⌥ ⌘ I | Geliştirici Araçlarını aç |
+
+### Bildirimler
+
+| Kısayol | Eylem |
+|----------|--------|
+| ⌘ ⇧ I | Bildirim panelini göster |
+| ⌘ ⇧ U | En son okunmamışa atla |
+
+### Bul
+
+| Kısayol | Eylem |
+|----------|--------|
+| ⌘ F | Bul |
+| ⌘ G / ⌘ ⇧ G | Sonrakini bul / Öncekini bul |
+| ⌘ ⇧ F | Arama çubuğunu gizle |
+| ⌘ E | Seçimi arama için kullan |
+
+### Terminal
+
+| Kısayol | Eylem |
+|----------|--------|
+| ⌘ K | Kaydırma geçmişini temizle |
+| ⌘ C | Kopyala (seçimle) |
+| ⌘ V | Yapıştır |
+| ⌘ + / ⌘ - | Yazı tipi boyutunu artır / azalt |
+| ⌘ 0 | Yazı tipi boyutunu sıfırla |
+
+### Pencere
+
+| Kısayol | Eylem |
+|----------|--------|
+| ⌘ ⇧ N | Yeni pencere |
+| ⌘ , | Ayarlar |
+| ⌘ ⇧ R | Yapılandırmayı yeniden yükle |
+| ⌘ Q | Çıkış |
+
+## Lisans
+
+Bu proje GNU Affero Genel Kamu Lisansı v3.0 veya sonrası (`AGPL-3.0-or-later`) ile lisanslanmıştır.
+
+Tam metin için `LICENSE` dosyasına bakın.
diff --git a/README.zh-CN.md b/README.zh-CN.md
new file mode 100644
index 00000000..e5fa387b
--- /dev/null
+++ b/README.zh-CN.md
@@ -0,0 +1,146 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
+English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe
+ +基于 Ghostty 的 macOS 终端,带有垂直标签页和为 AI 编程代理设计的通知系统
+ +
+
+
+
+
+
+
+
+
+打开 `.dmg` 文件并将 cmux 拖动到"应用程序"文件夹。cmux 通过 Sparkle 自动更新,您只需下载一次。
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+稍后更新:
+
+```bash
+brew upgrade --cask cmux
+```
+
+首次启动时,macOS 可能会要求您确认打开来自已验证开发者的应用。点击**打开**即可继续。
+
+## 为什么做 cmux?
+
+我同时运行大量 Claude Code 和 Codex 会话。之前我用 Ghostty 开了一堆分割窗格,依靠 macOS 原生通知来了解代理何时需要我。但 Claude Code 的通知内容总是千篇一律的"Claude is waiting for your input",没有任何上下文信息,而且标签页一多,连标题都看不清了。
+
+我试过几个编程协调工具,但大多数都是 Electron/Tauri 应用,性能让我不满意。我也更喜欢终端,因为 GUI 协调工具会把你锁定在它们的工作流里。所以我用 Swift/AppKit 构建了 cmux,作为一个原生 macOS 应用。它使用 libghostty 进行终端渲染,并读取您现有的 Ghostty 配置中的主题、字体和颜色设置。
+
+主要新增的是侧边栏和通知系统。侧边栏有垂直标签页,显示每个工作区的 git 分支、工作目录、监听端口和最新通知文本。通知系统能捕获终端序列(OSC 9/99/777),并提供 CLI(`cmux notify`),您可以将其接入 Claude Code、OpenCode 等代理的钩子。当代理等待时,其窗格会显示蓝色光环,标签页会在侧边栏高亮,这样我就能在多个分割窗格和标签页之间一眼看出哪个需要我。⌘⇧U 可以跳转到最新的未读通知。
+
+内置浏览器拥有从 [agent-browser](https://github.com/vercel-labs/agent-browser) 移植的可脚本化 API。代理可以抓取无障碍树快照、获取元素引用、执行点击、填写表单和执行 JS。您可以在终端旁边分割出浏览器窗格,让 Claude Code 直接与您的开发服务器交互。
+
+所有操作都可以通过 CLI 和 socket API 进行脚本化 — 创建工作区/标签页、分割窗格、发送按键、在浏览器中打开 URL。
+
+## 键盘快捷键
+
+### 工作区
+
+| 快捷键 | 操作 |
+|----------|--------|
+| ⌘ N | 新建工作区 |
+| ⌘ 1–8 | 跳转到工作区 1–8 |
+| ⌘ 9 | 跳转到最后一个工作区 |
+| ⌘ ⇧ W | 关闭工作区 |
+
+### 界面
+
+| 快捷键 | 操作 |
+|----------|--------|
+| ⌘ T | 新建界面 |
+| ⌘ ⇧ [ | 上一个界面 |
+| ⌃ ⇧ Tab | 上一个界面 |
+| ⌃ 1–8 | 跳转到界面 1–8 |
+| ⌃ 9 | 跳转到最后一个界面 |
+| ⌘ W | 关闭界面 |
+
+### 分割窗格
+
+| 快捷键 | 操作 |
+|----------|--------|
+| ⌘ D | 向右分割 |
+| ⌘ ⇧ D | 向下分割 |
+| ⌥ ⌘ ← → ↑ ↓ | 按方向切换焦点窗格 |
+
+### 浏览器
+
+| 快捷键 | 操作 |
+|----------|--------|
+| ⌘ ⇧ B | 在分割中打开浏览器 |
+| ⌘ L | 聚焦地址栏 |
+| ⌘ ] | 前进 |
+| ⌘ R | 刷新页面 |
+| ⌥ ⌘ I | 打开开发者工具 |
+
+### 通知
+
+| 快捷键 | 操作 |
+|----------|--------|
+| ⌘ ⇧ I | 显示通知面板 |
+| ⌘ ⇧ U | 跳转到最新未读 |
+
+### 查找
+
+| 快捷键 | 操作 |
+|----------|--------|
+| ⌘ F | 查找 |
+| ⌘ G / ⌘ ⇧ G | 查找下一个 / 上一个 |
+| ⌘ ⇧ F | 隐藏查找栏 |
+| ⌘ E | 使用选中内容进行查找 |
+
+### 终端
+
+| 快捷键 | 操作 |
+|----------|--------|
+| ⌘ K | 清除回滚缓冲区 |
+| ⌘ C | 复制(有选中内容时) |
+| ⌘ V | 粘贴 |
+| ⌘ + / ⌘ - | 增大 / 减小字体 |
+| ⌘ 0 | 重置字体大小 |
+
+### 窗口
+
+| 快捷键 | 操作 |
+|----------|--------|
+| ⌘ ⇧ N | 新建窗口 |
+| ⌘ , | 设置 |
+| ⌘ ⇧ R | 重新加载配置 |
+| ⌘ Q | 退出 |
+
+## 许可证
+
+本项目采用 GNU Affero 通用公共许可证 v3.0 或更高版本(`AGPL-3.0-or-later`)授权。
+
+完整许可证文本请参见 `LICENSE` 文件。
diff --git a/README.zh-TW.md b/README.zh-TW.md
new file mode 100644
index 00000000..dc9dfde9
--- /dev/null
+++ b/README.zh-TW.md
@@ -0,0 +1,146 @@
+> This translation was generated by Claude. If you have suggestions for improvement, please file a PR.
+
+English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe
+ +基於 Ghostty 的 macOS 終端機,具備垂直分頁和為 AI 程式設計代理設計的通知系統
+ +
+
+
+
+
+
+
+
+
+開啟 `.dmg` 檔案並將 cmux 拖曳到「應用程式」資料夾。cmux 透過 Sparkle 自動更新,您只需下載一次。
+
+### Homebrew
+
+```bash
+brew tap manaflow-ai/cmux
+brew install --cask cmux
+```
+
+稍後更新:
+
+```bash
+brew upgrade --cask cmux
+```
+
+首次啟動時,macOS 可能會要求您確認開啟來自已識別開發者的應用程式。點擊**開啟**即可繼續。
+
+## 為什麼做 cmux?
+
+我同時執行大量 Claude Code 和 Codex 工作階段。之前我用 Ghostty 開了一堆分割窗格,依靠 macOS 原生通知來了解代理何時需要我。但 Claude Code 的通知內容總是千篇一律的「Claude is waiting for your input」,沒有任何上下文資訊,而且分頁一多,連標題都看不清了。
+
+我試過幾個程式設計協調工具,但大多數都是 Electron/Tauri 應用程式,效能讓我不滿意。我也更偏好終端機,因為 GUI 協調工具會把你鎖定在它們的工作流程裡。所以我用 Swift/AppKit 建構了 cmux,作為一個原生 macOS 應用程式。它使用 libghostty 進行終端機渲染,並讀取您現有的 Ghostty 設定中的主題、字型和色彩設定。
+
+主要新增的是側邊欄和通知系統。側邊欄有垂直分頁,顯示每個工作區的 git 分支、工作目錄、監聽連接埠和最新通知文字。通知系統能擷取終端機序列(OSC 9/99/777),並提供 CLI(`cmux notify`),您可以將其接入 Claude Code、OpenCode 等代理的鉤子。當代理等待時,其窗格會顯示藍色光環,分頁會在側邊欄亮起,這樣我就能在多個分割窗格和分頁之間一眼看出哪個需要我。⌘⇧U 可以跳轉到最新的未讀通知。
+
+內建瀏覽器擁有從 [agent-browser](https://github.com/vercel-labs/agent-browser) 移植的可腳本化 API。代理可以擷取無障礙樹快照、取得元素參考、執行點擊、填寫表單和執行 JS。您可以在終端機旁分割出瀏覽器窗格,讓 Claude Code 直接與您的開發伺服器互動。
+
+所有操作都可以透過 CLI 和 socket API 進行腳本化 — 建立工作區/分頁、分割窗格、傳送按鍵、在瀏覽器中開啟 URL。
+
+## 鍵盤快捷鍵
+
+### 工作區
+
+| 快捷鍵 | 動作 |
+|----------|--------|
+| ⌘ N | 新建工作區 |
+| ⌘ 1–8 | 跳轉到工作區 1–8 |
+| ⌘ 9 | 跳轉到最後一個工作區 |
+| ⌘ ⇧ W | 關閉工作區 |
+
+### 介面
+
+| 快捷鍵 | 動作 |
+|----------|--------|
+| ⌘ T | 新建介面 |
+| ⌘ ⇧ [ | 上一個介面 |
+| ⌃ ⇧ Tab | 上一個介面 |
+| ⌃ 1–8 | 跳轉到介面 1–8 |
+| ⌃ 9 | 跳轉到最後一個介面 |
+| ⌘ W | 關閉介面 |
+
+### 分割窗格
+
+| 快捷鍵 | 動作 |
+|----------|--------|
+| ⌘ D | 向右分割 |
+| ⌘ ⇧ D | 向下分割 |
+| ⌥ ⌘ ← → ↑ ↓ | 按方向切換焦點窗格 |
+
+### 瀏覽器
+
+| 快捷鍵 | 動作 |
+|----------|--------|
+| ⌘ ⇧ B | 在分割中開啟瀏覽器 |
+| ⌘ L | 聚焦網址列 |
+| ⌘ ] | 前進 |
+| ⌘ R | 重新整理頁面 |
+| ⌥ ⌘ I | 開啟開發者工具 |
+
+### 通知
+
+| 快捷鍵 | 動作 |
+|----------|--------|
+| ⌘ ⇧ I | 顯示通知面板 |
+| ⌘ ⇧ U | 跳轉到最新未讀 |
+
+### 尋找
+
+| 快捷鍵 | 動作 |
+|----------|--------|
+| ⌘ F | 尋找 |
+| ⌘ G / ⌘ ⇧ G | 尋找下一個 / 上一個 |
+| ⌘ ⇧ F | 隱藏尋找列 |
+| ⌘ E | 使用選取內容進行尋找 |
+
+### 終端機
+
+| 快捷鍵 | 動作 |
+|----------|--------|
+| ⌘ K | 清除捲動緩衝區 |
+| ⌘ C | 複製(有選取內容時) |
+| ⌘ V | 貼上 |
+| ⌘ + / ⌘ - | 增大 / 縮小字型 |
+| ⌘ 0 | 重設字型大小 |
+
+### 視窗
+
+| 快捷鍵 | 動作 |
+|----------|--------|
+| ⌘ ⇧ N | 新建視窗 |
+| ⌘ , | 設定 |
+| ⌘ ⇧ R | 重新載入設定 |
+| ⌘ Q | 結束 |
+
+## 授權條款
+
+本專案採用 GNU Affero 通用公共授權條款 v3.0 或更新版本(`AGPL-3.0-or-later`)授權。
+
+完整授權條款文字請參見 `LICENSE` 檔案。
diff --git a/TODO.md b/TODO.md
index 08e72c64..fc43c40d 100644
--- a/TODO.md
+++ b/TODO.md
@@ -40,6 +40,9 @@
- [ ] Codex integration
- [ ] OpenCode integration
+## Browser
+- [ ] Per-WKWebView local proxy for full network request/response inspection (URL, method, headers, body, status, timing)
+
## UI/UX Improvements
- [ ] Add question mark icon to learn shortcuts
- [ ] Notification popover: each button item should show outline outside when focused/hovered