# oh-my-opencode

cmux omo запускає OpenCode із плагіном oh-my-openagent у середовищі, що знає про cmux. oh-my-openagent координує кілька AI-моделей (Claude, GPT, Gemini, Grok) як спеціалізованих агентів, що працюють паралельно. Коли він створює панелі агентів, вони стають нативними розділеннями cmux.

## Використання

```
cmux omo
cmux omo --continue
cmux omo --model claude-sonnet-4-6
```

OpenCode отримує всі аргументи, що стоять після omo.

## Що ви отримуєте

TmuxSessionManager в oh-my-openagent запускає кожного фонового агента в окремій панелі. З cmux omo ці панелі стають нативними розділеннями cmux замість панелей tmux:

-   Кожен субагент (Hephaestus, Atlas, Oracle та інші) працює в окремому розділенні cmux, яке видно в робочому просторі
-   Автоматичне керування розкладкою: агенти розташовуються сіткою (за замовчуванням main-vertical), а розміри змінюються, коли агенти з'являються й зникають
-   Неактивні агенти автоматично прибираються після 3 послідовних опитувань без нових повідомлень
-   Якщо вікно замале для нової панелі агента, запит стає в чергу й повторюється кожні 2 секунди, доки не звільниться місце
-   Ваша основна сесія залишається в головній панелі, а агенти працюють поруч

## Перший запуск

Під час першого запуску cmux omo автоматично налаштовує все потрібне:

1.  Створює тіньову конфігурацію в ~/.cmuxterm/omo-config/, де oh-my-opencode зареєстровано в масиві плагінів
2.  Установлює npm-пакет oh-my-opencode через bun або npm, якщо його ще немає
3.  Створює символьні посилання на node\_modules, package.json і конфігурацію плагінів з вашого початкового каталогу ~/.config/opencode/
4.  Вмикає режим tmux у конфігурації oh-my-opencode (типово tmux.enabled має значення false, а cmux omo змінює його на true)

Ваша початкова конфігурація ~/.config/opencode/ ніколи не змінюється. Звичайний запуск opencode працює так само, як і раніше.

## Як це працює

Так само, як у cmux claude-teams. Шим tmux перехоплює команди tmux від TmuxSessionManager в oh-my-openagent і перетворює їх на виклики API cmux.

-   Створює шим tmux у ~/.cmuxterm/omo-bin/tmux, який перенаправляє до cmux \_\_tmux-compat
-   Установлює TMUX і TMUX\_PANE, щоб імітувати сесію tmux
-   Вмикає tmux.enabled у конфігурації oh-my-opencode (потрібно для візуального створення панелей)
-   Вказує OPENCODE\_CONFIG\_DIR на тіньову копію конфігурації
-   Додає каталог шима на початок PATH і запускає opencode через exec

## Каталоги

| Шлях | Призначення |
| --- | --- |
| `~/.cmuxterm/omo-bin/` | Містить скрипт-шим для tmux |
| `~/.cmuxterm/omo-config/` | Тіньова конфігурація OpenCode із зареєстрованим плагіном oh-my-opencode та ввімкненим tmux (символьні посилання на вашу початкову конфігурацію) |
| `~/.cmuxterm/tmux-compat-store.json` | Постійне сховище для буферів і хуків tmux-compat |

## Тіньова конфігурація

cmux omo використовує тіньовий каталог конфігурації, тож ваше початкове налаштування OpenCode залишається незмінним:

-   Копіює ваш ~/.config/opencode/opencode.json, додаючи oh-my-opencode до масиву плагінів
-   Створює посилання на інші файли в ~/.config/opencode, на які посилається ваш opencode.json (наприклад, файли промптів), і повторно використовує ваш node\_modules (агенти, команди та плагіни вже завантажуються з оригінальної директорії)
-   Записує oh-my-opencode.json зі значенням tmux.enabled, рівним true
-   Установлює OPENCODE\_CONFIG\_DIR на тіньовий каталог перед запуском opencode

## Змінні середовища

| Змінна | Призначення |
| --- | --- |
| `TMUX` | Підставний шлях до сокета tmux, що кодує поточний робочий простір і панель cmux |
| `TMUX_PANE` | Підставний ідентифікатор панелі tmux, зіставлений з поточною панеллю cmux |
| `OPENCODE_CONFIG_DIR` | Вказує на тіньовий каталог конфігурації з увімкненим oh-my-opencode |
| `CMUX_SOCKET_PATH` | Шлях до керувального сокета cmux, до якого підключається шим |

Canonical: https://cmux.com/uk/docs/agent-integrations/oh-my-opencode

Documentation index: https://cmux.com/llms.txt
