Возможности · Удалённые серверы

Серверы как вкладки. Агент на сервере переживает обрыв связи

Linux‑серверы открываются вкладками рядом с локальными. Агент на сервере живёт внутри tmux и не замечает, что VPN моргнул, ноутбук уснул или вы закрыли программу на ночь. Всё, что агенту нужно для работы в команде, программа доставляет на сервер сама.

Знакомая ситуация

Агент на сервере в сессии PuTTY решает задачу уже час. Связь обрывается на секунду, и процесс умирает вместе с контекстом. На каждый новый сервер нужно вручную поставить клиент шины, раздать токены, помнить, где какая версия, а потом ещё объяснить агенту, как с этим работать.

Здесь сервер подключается один раз: вы заполняете профиль, программа проверяет сервер, и дальше вкладка ведёт себя как локальная, только работа идёт на другой машине.

Как это устроено

Профиль SSH с проверкой сервера

Адрес, пользователь, пароль или файл ключа с passphrase. При сохранении программа проверяет сервер по шагам: подключение и ключ сервера, наличие tmux, терминал, папки, сохранение сессии, безопасная запись файлов, связь с CCT. Не прошло: вы видите, что именно и как исправить, а изменения не сохраняются до исправления.

Сессия в tmux

Режимы «Если доступен» и «Обязательно». Агент запускается внутри tmux‑сессии на сервере, вкладка только подключается к ней. Обрыв сети, сон компьютера и закрытие вкладки агента не останавливают; «Автоматически переподключаться» возвращает вкладку в сессию. При выходе из программы сессия отсоединяется, агент продолжает работать, если вы не включили его завершение.

Связь агента с CCT без вашего участия

Программа копирует cct для Linux на сервер по SFTP, выдаёт агенту токен и поднимает обратный туннель до шины. Агент на сервере пишет cct notify, читает задачи и документы точно так же, как локальный. .NET на сервере не нужен: cct для Linux самодостаточен.

Правильная версия на каждом сервере

При подключении, после каждой загрузки и раз в сутки программа проверяет, какой cct агент реально видит. Старую копию своего cct переименовывает, чужой не трогает и предупреждает плашкой во вкладке. Связь с CCT включается и выключается на открытой вкладке без перезапуска агента.

Ключ сервера под контролем

Ключ запоминается при первом подключении. Если при следующем подключении ключ другой, программа отказывает в подключении и объясняет, что делать. Подмену сервера вы не пропустите.

Защита памяти сервера

Агенты, запущенные программой под одним пользователем, вместе получают не больше 60 % памяти сервера. Если агент исчерпает память, остановится он, а не ваши сервисы, и причина будет видна в подсказке вкладки.

Несколько агентов на одном сервере

Отдельные профили, отдельные tmux‑сессии, одна учётная запись. Сообщения на сервер доходят за секунды после перезапуска агента.

Безопасно по умолчанию

Пароли и passphrase хранятся в зашифрованном виде под мастер‑паролем; сам файл ключа программа не копирует, только помнит путь. Профиль с выключенной связью не имеет доступа к шине совсем. API программы слушает только локальный адрес и доверенные туннели, например WireGuard.

Как это выглядит в работе

Терминалы · вкладка Server‑1 · tmux · подключено
Server-1 ❯ cct whoami
I am: Server-1  scopes: bus.read, bus.write, tasks.read, tasks.write, tz.read, tz.write, docs.read, docs.write
Server-1 ❯ cct task next --mine
TASK-131  P1  Обновить сервис api до сборки 2.38 на тестовом сервере
Server-1 ❯ cct task status TASK-131 in_progress
… обрыв VPN на 40 секунд, вкладка переподключилась, агент этого не заметил …
Server-1 ❯ cct task status TASK-131 done --note-file report.md
OK
Server-1 ❯ cct notify --to Me --level done "api 2.38 на тестовом, журнал чистый"
Агент на сервере работает с теми же командами, что и локальный. Имена условные.
Скриншот: профиль SSHКарточки «Подключение», «Надёжность», «Связь агента с CCT» и ход проверки сервера по шагам
Скриншот: SSH‑вкладка после переподключенияМетка tmux, статус подключения, агент продолжает работу

Что это даёт администратору

  • Единая точка. Локальные и удалённые машины в одном окне, с одной шиной и одной доской задач. Проект разрабатывается с компьютера разработчика, а выполняется там, где нужно.
  • Обрыв связи не стоит часа работы. tmux держит агента, программа держит подключение.
  • Ничего не раздаётся вручную. Клиент шины, токен, туннель, обновление версии: всё делает программа, и вы видите результат проверки.
  • Серверу ничего не угрожает. Ключ сервера проверяется, память ограничена, доступ к шине выключается одним переключателем.

В сравнении с обычным терминалом

СитуацияSSH‑клиентOfficeSentinel AI Terminal
Обрыв связиСессия и агент умираютАгент в tmux продолжает работать, вкладка переподключается
Новый серверСтавите клиент, раздаёте токены, помните версииПрофиль, проверка сервера, всё остальное делает программа
Агент съел памятьПадают сервисы сервераОстанавливается агент, сервисы живы
Подмена ключа сервераПредупреждение, которое привыкли пропускатьОтказ в подключении, пока вы не разберётесь

Дальше