tmux для Claude Code: настройка сессий и работа по SSH
Настройте tmux для Claude Code: отдельные сессии и рабочие деревья Git, возврат по SSH после отключения и команды агентов для совместной работы над задачами.
Опубликовано

Используйте tmux для Claude Code на постоянно работающей удалённой машине: тогда можно закрыть ноутбук, позже подключиться по SSH и вернуться к той же работающей сессии Claude Code. Для каждой независимой задачи создайте отдельное рабочее дерево Git и именованную сессию tmux — так разработка функции и исправление ошибки будут идти в разных наборах файлов. Начните с этой схемы, а команду агентов подключайте, когда задачам потребуется совместное обсуждение.
Всё зависит от машины, на которой выполняется работа. tmux сохраняет терминальную сессию при разрыве соединения. Он не заставит спящий ноутбук продолжать вычисления, не поддержит работу выключенного сервера и не перезапустит Claude после сбоя процесса. Anthropic прямо рекомендует tmux или screen для удалённой сессии Claude, которая должна пережить разрыв SSH-соединения. Документация Anthropic по Remote Control.
Как настроить tmux для Claude Code по документации
Настройте tmux на той машине, где работает Claude Code. При удалённой работе это файл ~/.tmux.conf на удалённом хосте. Если tmux ещё не установлен, установите его через пакетный менеджер этого хоста и перед продолжением выполните там tmux -V и claude --version.
Добавьте этот блок в ~/.tmux.conf, объединив его с существующими настройками. Первые три строки взяты из документации Anthropic. Закомментированная настройка мыши — дело предпочтений, Anthropic её не требует.
set -g allow-passthrough on
set -s extended-keys on
set -as terminal-features 'xterm*:extkeys'
# Optional preference: enable mouse interaction in tmux.
# set -g mouse onPassthrough позволяет передавать уведомления и сообщения о ходе работы во внешний терминал. Поддержка расширенных клавиш позволяет tmux отличать Shift+Enter от Enter. Чтобы применить настройки к уже запущенному серверу tmux, выполните tmux source-file ~/.tmux.conf; новый сервер читает этот файл при запуске. Настройка терминала в документации Anthropic.
Если сервер tmux ещё не запущен, сначала создайте первую сессию по примеру ниже, а затем выполните команду перечитывания конфигурации. На начальном этапе обойдитесь без сторонних плагинов: для этой схемы они не нужны.
Каждому рабочему дереву — своя именованная сессия
Рабочее дерево Git, или worktree, — это отдельная рабочая копия со своими файлами и веткой, которая использует общую историю репозитория. Сессия tmux — именованная группа терминальных окон; панель — часть такого окна. Рабочее дерево можно представить как верстак, а tmux — как комнату, из которой можно выйти и в которую можно вернуться. Руководство Anthropic по рабочим деревьям.
Называйте сессии и рабочие деревья согласованно, чтобы по имени сессии было понятно, в какую рабочую копию вы входите. Ниже — один из вариантов организации, а не стандартная схема Claude Code:
Пример первого запуска ниже предполагает, что репозиторий уже существует в ~/src/project, в нём есть хотя бы один коммит, а указанные имена веток, каталогов и сессий ещё не заняты. Замените dev@devbox и путь к проекту на свои. Начните в обычной оболочке ноутбука, вне tmux. Команды для рабочих деревьев соответствуют ручному порядку работы из документации Anthropic; организация именованных сессий — схема, предлагаемая в этой статье.
ssh dev@devbox
cd ~/src/project
git worktree add ../project-feature-a -b feature-a
git worktree add ../project-bugfix -b bugfix
tmux new-session -d -s cc-feature-a -n claude -c "$HOME/src/project-feature-a"
tmux new-session -d -s cc-bugfix -n claude -c "$HOME/src/project-bugfix"
tmux attach-session -t cc-feature-a
# Now inside the feature worktree's tmux shell:
claudeПосле подключения по SSH вводите остальные команды на удалённом хосте. Изначально в двух сессиях, созданных без подключения к ним, работают только оболочки. Подключившись к одной из них и выполнив claude, вы запустите видимую сессию работы с кодом, включая обычные запросы начальной настройки. Когда потребуется запустить вторую задачу, отсоединитесь, подключитесь к cc-bugfix и выполните там claude.
Каждому рабочему дереву нужна собственная настройка проекта: установка зависимостей и необходимая локальная конфигурация. Прежде чем поручать Claude правки, проверьте текущий каталог и ветку. Ручное управление рабочими деревьями в документации Anthropic.
Если нужна отдельная оболочка для тестов в рабочей копии с новой функцией, выполните на хосте tmux new-window -t cc-feature-a -n checks -c "$HOME/src/project-feature-a". Держите проверки рядом с задачей, к которой они относятся. Не используйте основную рабочую копию как общий временный каталог для обоих агентов.
Если вы также пользуетесь Codex, его порядок работы отдельно разобран в нашем руководстве по рабочим деревьям в Codex CLI.

Как отсоединиться, закрыть ноутбук и вернуться по SSH
Если в tmux задан стандартный префикс, нажмите Ctrl+B, отпустите обе клавиши, затем нажмите D. Клиент отсоединится от сессии, и вы вернётесь в удалённую оболочку. Теперь можно разорвать SSH-соединение. Оставьте Claude работать внутри его сессии.
Когда вернётесь, выполните ssh dev@devbox, затем tmux list-sessions, затем tmux attach-session -t cc-feature-a. Подключайтесь к тому же удалённому хосту под той же учётной записью. С ноутбука это можно сделать одной командой: ssh -t dev@devbox 'tmux attach-session -t cc-feature-a'.
Эти сочетания предполагают стандартный префикс. Если вы его изменили, используйте свой. Находясь внутри tmux, переключайте сессии, а не запускайте ещё один клиент tmux внутри текущего.
Повторное подключение возвращает вас к существующему процессу в терминале. Если процесс завершился, восстановление диалога — уже другая операция: claude --continue продолжает последний диалог в текущем каталоге, а claude --resume открывает список для выбора. Ни одна из этих команд не заменяет сохранение исходного процесса в работающем состоянии. Работа с сессиями в документации Anthropic.
Для доступа с телефона или из браузера посмотрите Claude Code Remote Control. Вычисления и в этом случае остаются на хосте, который должен быть включён. Remote Control в документации Anthropic.
Когда стоит подключать команду агентов
Команды агентов — экспериментальная возможность, по умолчанию отключённая. Чтобы запустить ведущего агента в новой интерактивной сессии, выполните в оболочке tmux CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 claude --teammate-mode tmux. Переменная окружения включает команды агентов для этого запуска, а флаг выбирает режим отдельных панелей. Настройка команд агентов в документации Anthropic.
Сейчас по умолчанию используется режим in-process. Режим auto использует отдельные панели внутри tmux и при необходимости переключается на запасной вариант; tmux выбирает режим отдельных панелей с определением терминала. Постоянную настройку можно задать через teammateMode в ~/.claude/settings.json. В режиме отдельных панелей у участников команды свои видимые терминалы. По документации Anthropic, встроенный терминал VS Code, Windows Terminal и Ghostty этот режим не поддерживают. Режимы отображения и ограничения в документации Anthropic.
Для первой пробы я бы дал ведущему агенту такую узкую задачу:
Создай команду агентов, чтобы выяснить причину тайм-аута при оформлении заказа. Назови одного участника Requests, другого — Storage. Пусть Requests проследит логику повторных запросов, а Storage проверит границы транзакций. Попроси их сопоставить найденные данные. Не изменяйте файлы. Подготовь предложение по исправлению и план тестирования.
Запущенные вручную сессии cc-feature-a и cc-bugfix не становятся участниками одной команды лишь потому, что обе работают в tmux. Команда агентов — отдельное решение о том, кто распределяет задачи и сводит результаты расследования. Если нужна узкая делегированная задача внутри одной сессии, предпочтительнее субагенты Claude Code.

Панель терминала — не отдельная рабочая копия. Для независимых правок назначайте агентам разные файлы или используйте разные рабочие деревья. Кроме того, команды агентов расходуют больше токенов; tmux этот расход не снижает. Повторное подключение сохраняет доступ к работающему терминалу, а /resume не восстанавливает участников команды в режиме in-process. Рекомендации Anthropic по работе с командами.
Пять задач, для которых подходит эта схема
Я бы расставил приоритеты в следующем порядке. Это возможные сценарии работы, а не подтверждённые измерениями обещания роста продуктивности.
Прежде чем добавлять автоматизацию, измерьте затраты на возврат к работе после перерывов. Допустим, за неделю происходит пять перерывов и после каждого четыре минуты уходят на восстановление контекста: это двадцать минут в неделю. Числа условные, это не результаты бенчмарка. Замеряйте собственное время на восстановление, настройку и проверку результатов. Схема оправдывает себя, если общие затраты снижаются. Больше одновременно работающих агентов не обязательно выгоднее.
Два небольших инструмента, которые можно на этом построить
Более перспективный вариант — инструмент запуска рабочих деревьев и сессий для команд разработки. Платформенная команда могла бы платить за единые правила именования задач, путей к рабочим копиям и команд подключения для всех разработчиков. Минимально полезная версия должна создавать или находить рабочее дерево, открывать его именованную сессию tmux и показывать ветку и путь перед запуском Claude. Перед удалением рабочей копии она должна запрашивать подтверждение.
По оценке DataForSEO для США, полученной 12 октября 2026 года, запрос «tmux claude code» ищут 480 раз в месяц. Это лишь узкий сигнал интереса к настройке, а не число потенциальных покупателей. Ограничение идеи в том, что команде может хватить короткого внутреннего скрипта. Чтобы за продукт платили, он должен снимать повторяющуюся работу за счёт настройки под конкретную команду или поддержки.
Второй, более узкий продукт — каталог удалённых сессий. Небольшой инженерной команде могло бы пригодиться единое место для разрешённых псевдонимов хостов, имён сессий и путей к рабочим копиям, с SSH-командой подключения, которую можно скопировать. Начните с поиска и навигации, а управление жизненным циклом добавляйте, только если оно нужно пользователям.
Та же проверка DataForSEO оценивает частотность в США в 1,600 запросов в месяц для «claude code remote» и 70 для «claude code remote ssh». Более широкий запрос включает людей, которые ищут другие способы удалённого доступа, поэтому сам по себе не подтверждает спрос на продукт для SSH. Сложность здесь в управлении доступом: каталог должен учитывать существующие права каждого разработчика на хостах. Прежде чем делать панель управления, поговорите с командами, для которых удалённая работа — основной формат.
Вопросы, которые возникнут на практике
Продолжит ли Claude работать, если закрыть ноутбук?
Да, если Claude и tmux запущены на удалённом хосте, который не уходит в сон и остаётся подключённым к сети. Если они работают на ноутбуке, который засыпает, работа приостановится вместе с ним. При этом сохранённая терминальная сессия ещё не означает, что задача продвигается: Claude может ждать вашего ответа.
Почему Shift+Enter в tmux всё ещё отправляет сообщение?
Проверьте, что изменили и перечитали конфигурацию именно на том хосте, где работает tmux. Если требуется /terminal-setup, выполните его во внешнем терминале. Документация предлагает Ctrl+J как запасное сочетание для перевода строки. Настройка терминала в документации Anthropic.
Почему при подключении tmux сообщает, что сессии нет?
Проверьте хост, пользователя и точное имя сессии с помощью tmux list-sessions. Если сессия завершилась или хост перезагрузился, нужно восстанавливать работу, а не повторять подключение. Не создавайте замену с похожим именем, пока не выясните, не работает ли исходная сессия где-то ещё.
Защищают ли две панели tmux от одновременных правок одних файлов?
Нет. В этой схеме изоляцию обеспечивают разные пути рабочих деревьев. Перед правками проверьте каталог и ветку в каждой оболочке. Полученные изменения всё равно нужно проверить и интегрировать.
Первый шаг на понедельник: выберите одну удалённую задачу, создайте для неё рабочее дерево и именованную сессию. Прежде чем оставлять её без присмотра, проверьте отсоединение и повторное подключение. Вторую независимую задачу добавляйте, когда этот порядок станет привычным.
Если вашей команде нужно встроить такую схему в среду разработки, мы создаём ИИ-системы для промышленной эксплуатации.
- Опубликовано
- Категория
- Build
- Язык







