> Этот перевод создан Claude. Если у вас есть предложения по улучшению, откройте PR.

<p align="center">
  <a href="README.md">English</a> | <a href="README.zh-CN.md">简体中文</a> | <a href="README.zh-TW.md">繁體中文</a> | <a href="README.ko.md">한국어</a> | <a href="README.de.md">Deutsch</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.it.md">Italiano</a> | <a href="README.da.md">Dansk</a> | <a href="README.ja.md">日本語</a> | <a href="README.pl.md">Polski</a> | Русский | <a href="README.bs.md">Bosanski</a> | <a href="README.ar.md">العربية</a> | <a href="README.no.md">Norsk</a> | <a href="README.pt-BR.md">Português (Brasil)</a> | <a href="README.th.md">ไทย</a> | <a href="README.tr.md">Türkçe</a>
</p>

<h1 align="center">cmux</h1>
<p align="center">Терминал macOS на базе Ghostty с вертикальными вкладками и уведомлениями для AI-агентов программирования</p>

<p align="center">
  <a href="https://github.com/manaflow-ai/cmux/releases/latest/download/cmux-macos.dmg">
    <img src="./docs/assets/macos-badge.png" alt="Скачать cmux для macOS" width="180" />
  </a>
</p>

<p align="center">
  <img src="./docs/assets/screenshot.png" alt="Скриншот cmux" width="900" />
</p>

## Возможности

- **Вертикальные вкладки** — Боковая панель показывает ветку git, рабочий каталог, прослушиваемые порты и текст последнего уведомления
- **Кольца уведомлений** — Панели получают синее кольцо, а вкладки подсвечиваются, когда AI-агенты (Claude Code, OpenCode) нуждаются в вашем внимании
- **Панель уведомлений** — Просматривайте все ожидающие уведомления в одном месте, переходите к последнему непрочитанному
- **Разделённые панели** — Горизонтальное и вертикальное разделение
- **Встроенный браузер** — Разделите браузер рядом с терминалом со скриптуемым API, портированным из [agent-browser](https://github.com/vercel-labs/agent-browser)
- **Скриптуемость** — CLI и socket API для создания рабочих пространств, разделения панелей, отправки нажатий клавиш и автоматизации браузера
- **Нативное приложение macOS** — Создано на Swift и AppKit, не Electron. Быстрый запуск, низкое потребление памяти.
- **Совместимость с Ghostty** — Читает вашу существующую конфигурацию `~/.config/ghostty/config` для тем, шрифтов и цветов
- **Ускорение GPU** — На базе libghostty для плавного рендеринга

## Установка

### DMG (рекомендуется)

<a href="https://github.com/manaflow-ai/cmux/releases/latest/download/cmux-macos.dmg">
  <img src="./docs/assets/macos-badge.png" alt="Скачать cmux для macOS" width="180" />
</a>

Откройте файл `.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 | Закрыть рабочее пространство |
| ⌘ B | Переключить боковую панель |

### Поверхности

| Сочетание | Действие |
|----------|--------|
| ⌘ T | Новая поверхность |
| ⌘ ⇧ ] | Следующая поверхность |
| ⌘ ⇧ [ | Предыдущая поверхность |
| ⌃ Tab | Следующая поверхность |
| ⌃ ⇧ Tab | Предыдущая поверхность |
| ⌃ 1–8 | Перейти к поверхности 1–8 |
| ⌃ 9 | Перейти к последней поверхности |
| ⌘ W | Закрыть поверхность |

### Разделённые Панели

| Сочетание | Действие |
|----------|--------|
| ⌘ D | Разделить вправо |
| ⌘ ⇧ D | Разделить вниз |
| ⌥ ⌘ ← → ↑ ↓ | Фокус панели по направлению |
| ⌘ ⇧ H | Мигнуть фокусированной панелью |

### Браузер

| Сочетание | Действие |
|----------|--------|
| ⌘ ⇧ L | Открыть браузер в разделении |
| ⌘ L | Фокус на адресной строке |
| ⌘ [ | Назад |
| ⌘ ] | Вперёд |
| ⌘ R | Перезагрузить страницу |
| ⌥ ⌘ I | Открыть Инструменты Разработчика |

### Уведомления

| Сочетание | Действие |
|----------|--------|
| ⌘ I | Показать панель уведомлений |
| ⌘ ⇧ U | Перейти к последнему непрочитанному |

### Поиск

| Сочетание | Действие |
|----------|--------|
| ⌘ F | Поиск |
| ⌘ G / ⌘ ⇧ G | Найти следующий / предыдущий |
| ⌘ ⇧ F | Скрыть панель поиска |
| ⌘ E | Использовать выделение для поиска |

### Терминал

| Сочетание | Действие |
|----------|--------|
| ⌘ K | Очистить scrollback |
| ⌘ C | Копировать (с выделением) |
| ⌘ V | Вставить |
| ⌘ + / ⌘ - | Увеличить / уменьшить размер шрифта |
| ⌘ 0 | Сбросить размер шрифта |

### Окно

| Сочетание | Действие |
|----------|--------|
| ⌘ ⇧ N | Новое окно |
| ⌘ , | Настройки |
| ⌘ ⇧ , | Перезагрузить конфигурацию |
| ⌘ Q | Выход |

## Лицензия

Этот проект лицензирован под GNU Affero General Public License v3.0 или более поздней версии (`AGPL-3.0-or-later`).

Полный текст см. в файле `LICENSE`.
