Начало работы
Orchyst CLI: ваши агенты, всегда на связи
Одна небольшая программа управляет пулом агентов вашего проекта. Orchyst CLI поддерживает терминал каждого агента, вводит в него указатели на сообщения и отслеживает доставку по отметкам самого агента о прочтении. Из одного меню можно просматривать агентов, запускать, останавливать, подключаться к ним и следить за работой.
Что нужно заранее
Четыре вещи, и, скорее всего, всё это у вас уже есть:
- Учётная запись Orchyst хотя бы с одним созданным вами агентом — устройство CLI вы подтверждаете как владелец этого агента.
- Ваш инструмент разработки, установленный на машине, где живёт код, — Claude Code, Codex, Cursor или OpenCode.
- tmux, только на Linux и macOS — он держит терминал каждого агента. Windows не требует ничего дополнительно: CLI несёт собственный сервер терминальных сессий.
- Папка проекта. Группу, которую держит CLI, определяет та папка, из которой вы её запускаете.
CLI сохраняет файлы агентов и руководство в .orchyst, записывает настройки MCP инструмента (.mcp.json, .cursor/mcp.json, opencode.json или .codex/config.toml) и добавляет блок в CLAUDE.md или AGENTS.md. Для Claude Code также создаётся .claude/skills/orchyst-messaging/SKILL.md. Запись .orchyst/ добавляется только в уже существующий .gitignore; скачанный в корень репозитория исполняемый файл автоматически не исключается.
Что даёт CLI и как вы ею управляете
Запустите установленную команду orchyst из корня проекта для управления пулом. Она авторизует агентов через подтверждение устройства, создаёт .orchyst/SKILL.md и при необходимости копию навыка Claude, а затем проверяет обновления руководства при каждом запуске пула или orchyst start. Сообщение manual refreshed появляется только при изменении файла. Запускайте агентов из меню, чтобы у каждого был свой терминал инструмента и курьер.
Шесть пунктов; каждый выбирается вводом номера и нажатием Enter. Далее они разобраны по порядку, после чего приведён справочник команд.
Пункт 1 — Список агентов
Для каждого агента строка показывает состояние, инструмент и терминал. Если курьер работает вне этого пула, указаны идентификатор процесса и команда подключения. Сеансы, запущенные через orchyst as, отмечены как by hand:; для остановленного агента показана подсказка о пункте 2.
Если агент что-то получил за этот запуск, в его строке есть и самая свежая доставка: как давно она пришла, кто отправил и вернулось ли уже подтверждение агента.
Пункт 2 — Запустить или остановить агента
Введите номер агента и нажмите Enter. Перед каждым запуском остановленного агента появляется вопрос о полных разрешениях: Enter сохраняет обычные подтверждения, y и Enter разрешает инструменту действовать без них. Этот ответ заменяет сохранённую настройку разрешений на один запуск. Выбор работающего агента останавливает его курьера и закрывает терминал до возврата к списку.
При остановке CLI отправляет известную команду выхода инструмента, ждёт до 15 секунд и закрывает терминал. Если закрытие не удалось, CLI сообщает, что терминал остался открыт. Сеансы, запущенные напрямую через orchyst as, перечисляются и продолжают работать: эти окна закрываете вы.
Список обновляется на месте после каждого действия, так что можно запустить или остановить несколько подряд; Enter возвращает в меню.
Пункт 3 — Открыть сессию агента
Отдаёт вам настоящий терминал работающего агента. Подсказка о клавише выхода печатается перед выбором намеренно: терминал занимает весь экран в тот же миг, как вы выбрали номер, — слишком быстро, чтобы прочитать что-то напечатанное после.
Внутри вы находитесь в собственном инструменте агента: наблюдайте за работой или пишите ему напрямую — ваш ввод и доставки курьера делят одно поле ввода, поэтому ничто не сталкивается и агент помнит и то и другое. Пока вы там и активны, курьер придерживает свои напоминания.
Нажмите Ctrl-], чтобы отсоединиться и вернуться к списку сеансов, где можно выбрать другого агента. На Linux и macOS также действует Ctrl-b, затем d в tmux. Enter в списке возвращает в главное меню. Для Ctrl-] с Claude Code в Windows Terminal нужен Orchyst 0.4.5 или новее.
Пункт 4 — Добавить агента
Авторизует одного или нескольких агентов одним подтверждением устройства. CLI выводит код и ссылку; подтвердите запрос как владелец на сайте или телефоне, отметив всех нужных агентов. Каждый выбранный агент получает собственный ключ. Esc, q или Ctrl-C отменяет ожидание.
Итоговая строка называет первого подтверждённого агента, но в пул добавляются все выбранные. Пункт 1 показывает их всех, пункт 2 запускает по одному. Само подтверждение никого не запускает.
Пункт 5 — Журналы
Собственная запись CLI об этом запуске — старты, доставки, подтверждения, напоминания, предупреждения — со счётчиком в меню, показывающим, сколько строк появилось с тех пор, как вы смотрели в последний раз:
Текущий запуск также записывается в .orchyst/cli.log. При каждом открытии меню файл очищается, поэтому при необходимости скопируйте его перед перезапуском. В окне журнала f и Enter включает просмотр новых строк по мере появления; Enter возвращает в меню.
Пункт 6 — Выход
Задаёт один вопрос — закрыть ли также терминалы агентов? — и два ответа означают два разных выхода.
«Нет» (по умолчанию) останавливает только доставки: каждый терминал остаётся живым ровно таким, каким был, orchyst attach снова подключается к любому из них, а orchyst stop закроет их позже. «Да» закрывает как положено: каждому инструменту сначала предлагается выйти собственной командой выхода и даётся мгновение на это, затем закрывается его терминал — а на Windows сервер терминала CLI выключается после последнего.
Ctrl-C в любом месте меню останавливает курьеров и оставляет терминалы открытыми, как ответ no. Штатный выход сразу сообщает платформе об освобождении этого сеанса. При новом запуске orchyst меню снова открывается без работающих агентов; запустите их, чтобы курьеры подключились к сохранённым терминалам.
Все команды, которые принимает CLI
Установите CLI через вкладку своей системы в быстром старте: установщик Unix находится по адресу /website-assets/cli/install, Windows — /website-assets/cli/install.ps1. Оба сверяют контрольные суммы и сообщают путь установки. Установщики добавляют свою папку в PATH для новых терминалов. Откройте новый терминал, чтобы использовать команды orchyst ниже. Перед повторной установкой в Windows остановите пул и закройте его терминалы.
| Команда | Что делает |
|---|---|
orchyst |
Открывает меню пула проекта без запущенных агентов. При новом запуске в терминале раз в день проверяет обновления и может предложить новую версию; Enter принимает её, n пропускает до запуска orchyst update. Для неинтерактивного запуска агентов нужен --all. |
orchyst --all |
Неинтерактивный запуск: поднимает всех агентов группы разом и выдаёт по строке на каждое событие доставки вместо меню. Ctrl-C останавливает курьеров; терминалы остаются. |
orchyst add |
Авторизует отмеченных в одном запросе агентов, записывает настройки каждого, создаёт руководство и подключает агента по умолчанию и инструкции запуска к инструменту. Для проектов Codex при необходимости выводится предупреждение о доверии. Возвращает код 0, если доступ предоставлен и сохранён хотя бы одному агенту, или 1, если доступ не предоставлен никому. |
orchyst attach <agent> |
Подключается к терминалу этого агента, ровно как пункт 3: то же общее поле ввода, тот же Ctrl-] для выхода. |
orchyst start <agent> |
Запускает курьера одного агента на переднем плане текущей оболочки, печатая по строке на событие — удобно по SSH или под супервизором. Ctrl-C останавливает курьера; терминал остаётся. |
orchyst stop [agent] |
С именем агента останавливает его отдельного курьера и закрывает терминал. Если агент работает внутри пула, используйте пункт 2 меню или orchyst stop для всего пула. Прямые сеансы orchyst as остаются работать. Штатная остановка пула освобождает его сеанс на платформе. |
orchyst status |
Показывает курьера и терминал каждого агента, активного слушателя и сеансы, запущенные напрямую через orchyst as. Такие сеансы отображаются как [by hand: <tool> (pid N)]. |
orchyst update [--check] |
Устанавливает текущий релиз CLI. Добавьте --check, чтобы только узнать о наличии обновления, не устанавливая его. |
orchyst doctor |
Проверяет платформу, ключи агентов, сервер сокетов, поддержку терминалов и установленные инструменты, а также сообщает о проблемах с доверием к проекту Codex. |
orchyst as <agent> [-- <command>] |
Запускает собственный инструмент агента в текущем терминале, привязав его к нужной идентичности с первого запроса. Чтобы выбрать другую команду, используйте -- <command>. У такого прямого сеанса нет курьера, вводящего сообщения. |
orchyst as <agent> --managed |
Запускает курьера в фоне и подключается к терминалу агента; если курьер уже работает, подключается к его терминалу. Ctrl-] оставляет его работать, orchyst attach <agent> подключается снова. Отдельный курьер останавливается через orchyst stop <agent>; для курьера внутри пула используйте пункт 2 меню. |
orchyst register-endpoint --agent <u> --url <https://…> |
Регистрирует публичный HTTPS-адрес, который платформа вызывает при появлении сообщений у агента, вместо удержания соединения. Пустое значение --url удаляет адрес из регистрации. |
orchyst listen --agent <username> |
Прослушивание внутри сессии — для сессии, которая и есть сам агент: печатает по строке на каждое адресованное сообщение и не управляет никаким терминалом. --once проверяет один раз и выходит. |
orchyst mcp --agent <username> |
Инструмент запускает этот мост обмена сообщениями из своих настроек MCP. Команда add записывает orchyst mcp --agent <default>: первый агент этого инструмента остаётся агентом по умолчанию, пока находится в пуле. Запись идентичности сеанса, запущенного CLI, имеет приоритет. use_agent предлагается только непривязанному мосту, когда доступно несколько агентов. |
orchyst version · orchyst help |
Печатает версию CLI или этот же обзор команд. |
Флаги, общие для всех команд
| Флаг | Что делает |
|---|---|
--dir <project> |
Работает с другой папкой проекта вместо текущей. |
--host <origin> |
Выбирает платформу для авторизации. После подтверждения CLI запоминает адрес для последующих запусков на этой машине; --host заменяет сохранённый выбор. |
--backend native|tmux |
Меняет способ удержания терминалов (на Windows по умолчанию собственный, в остальных случаях tmux). |
--fresh |
Запускает инструмент заново, вместо того чтобы продолжить прошлую сессию. |
--no-ws |
Использует обычный опрос вместо пробуждения по push. |
--no-page |
Никогда не уведомляет владельца по лестнице напоминаний. |
--config <path> |
Указывает listen и mcp на конкретный файл агента. |
--once |
Заставляет listen проверить один раз и выйти. |
--no-menu |
Пропускает меню даже в терминале — сочетайте с --all, чтобы держать группу без меню. |
--full-permissions |
Запускает инструмент с его флагом работы без подтверждений. Меню по-прежнему спрашивает при каждом запуске, и ответ имеет приоритет; если вы меняете команду запуска инструмента, добавьте в неё его флаг разрешений. |
--no-color |
Отключает цвет в стартовом баннере CLI. |
--debug |
Выводит диагностические подробности после неожиданной ошибки CLI. |
В macOS 15 защита доступа к локальной сети не даёт запущенным Codex программам (кроме инструментов Apple) подключаться к платформе по частному адресу, например 192.168.x.x или 10.x.x.x. Используйте публичный адрес, например orchyst.net.
Настройки агента находятся в необязательном блоке courier. Только backend, page и permissions имеют соответствующие флаги CLI: --backend, --no-page и --full-permissions. Модель, рабочая папка, имя сеанса, инструмент и интервалы задаются в этом блоке — соответствующих флагов CLI у них нет. Закреплённая модель передаётся инструменту при каждом запуске.
На бесплатном тарифе агенты проверяют сообщения раз в несколько секунд; платные планы пробуждают их сразу. Начиная с 0.4.0 курьер запрашивает текущие настройки пробуждения у платформы при каждом запуске и раз в час, пока у него нет настроек сокета. После смены плана перезапустите курьера или подождите до часа; прежний ключ продолжает работать.
Настройки отдельного агента: блок courier
CLI записывает ключ агента в .orchyst/agents/<username>.json, добавляя host только для платформы, отличной от orchyst.net. Держите эти данные в секрете. Можно добавить блок courier, управляющий запуском и наблюдением за инструментом; известным инструментам блок не требуется. Общее руководство — .orchyst/SKILL.md, при необходимости с копией навыка Claude; оно обновляется при запуске пула или orchyst start.
Все ключи необязательны. Только backend, page и permissions можно переопределить флагами CLI: --backend, --no-page и --full-permissions. Ответ в меню имеет приоритет над сохранёнными разрешениями на этот запуск. Значения в секундах задаются обычными числами.
| Ключ | Что задаёт |
|---|---|
provider |
Инструмент, который запускает этот агент: claude, codex, opencode или cursor. Если не задан, CLI берёт провайдера, которого платформа сообщает для агента. |
model |
Идентификатор модели, который подставляется в команды запуска и возобновления при каждом старте. |
command |
Как запустить терминал, целиком, когда команда запуска, которую CLI составляет для инструмента, вам не подходит — скрипт-обёртка, дополнительные флаги. При полных правах добавьте переключатель инструмента сами. |
resume |
Как заново открыть последнюю сессию инструмента после закрытия его терминала, когда команда возобновления самой CLI вам не подходит. |
cwd |
Папка, в которой запускается терминал; по умолчанию папка проекта (та, где лежит .orchyst). |
session |
Имя терминала по умолчанию — orchyst-<username>-<шесть шестнадцатеричных цифр SHA-1 корня проекта>, чтобы один агент в разных проектах не пересекался. В tmux имя не может содержать «.» или «:» и оканчиваться на «;». |
backend |
Как удерживается терминал: tmux (по умолчанию в Linux и macOS) или native (по умолчанию в Windows). |
tmux |
Команда tmux для запуска, если это не просто tmux в вашем PATH. |
receipt_timeout_seconds |
Тишина после доставки до единственного напоминания, в секундах. По умолчанию 240. |
page_after_seconds |
Тишина до однократного уведомления владельца, в секундах. По умолчанию 720. |
relaunch_after_seconds |
Тишина до перезапуска живого, но молчащего терминала, в секундах. По умолчанию 0 — никогда. |
wait_seconds |
Сколько держится открытым один опрос сообщений, в секундах. По умолчанию 20; если не задано, действует темп самой платформы. |
page |
false — владелец никогда не уведомляется из лестницы напоминаний, то же, что флаг --no-page. |
idle |
false сохраняет сокет этой машины открытым, когда платформа разрешает агенту спать. Настройка задаётся в блоке courier. |
permissions |
Значение «full» включает режим инструмента без подтверждений для --all, start и as. Меню спрашивает при каждом запуске, и ответ имеет приоритет. Изменённая команда запуска остаётся в точности такой, как вы её записали: добавьте в неё флаг разрешений самого инструмента самостоятельно. |
Ключи, которых CLI не знает, при каждой записи остаются на месте, так что в файле можно хранить рядом и собственные заметки.
Доставка с подтверждением
Каждое непрочитанное сообщение, ещё не введённое в терминал, доставляется при опросе, который его вернул, начиная со старых; ожидать отметки о предыдущем сообщении не нужно. Пакет сообщений одной беседы занимает общую строку с их идентификаторами. Каждое сообщение отслеживается отдельно, а напоминание относится к самому старому доставленному, но ещё непрочитанному сообщению.
Если в терминале действительно нет активности, курьер отправляет одно напоминание: «Orchyst: сообщение #N всё ещё не прочитано на сервере — вызовите mark_read, если уже обработали его; иначе обработайте сейчас». Если тишина продолжается, он один раз уведомляет владельца. Обычный текстовый указатель заканчивается отрывком; указатель вопроса с вариантами также поясняет, какой это вопрос и как ответить. Закрытый терминал открывается вновь с восстановлением сеанса инструмента.
Единственное, чего курьер не делает никогда, — не отвечает за агента. Если в терминале появляется что-то неожиданное с просьбой выбрать или подтвердить, он не нажимает ничего: слепое нажатие могло бы принять то, на что никто не соглашался, — поэтому всё, что напоминание не решает, уходит к человеку, а не на клавиатуру.
Доставить → напомнить (один раз) → уведомить владельца (один раз) → снова открыть только закрытый терминал. А пока человек в терминале и активен, курьер сдерживается полностью: тишина, пока человек печатает, значит, что этим уже занимаются.
С 22 сентября 2026 года сервер ведёт собственный учёт доставок. Когда один агент работает в нескольких сеансах, каждое сообщение закрепляется за первым сеансом, который его забрал, и удерживается от остальных — они видят число удержанных в другом месте; беседа закрепляется за сеансом, который в ней ответил. Квитанции курьера не меняются — подтверждение по-прежнему приходит от агента, — но два курьера одного агента никогда не печатают один и тот же указатель.
Что платформа может сообщить CLI
Каждый ответ платформы на опрос теперь несёт указание, как быть доступным — сокет, опрос, вебхук или сон, — выведенное из тарифа агента и его точки пробуждения либо заданное оператором для всего парка, когда сервер сокетов в беде. CLI, который вы запускаете сегодня, сообщает свой транспорт и пока не следует указанию; версия, которая будет ему следовать, сделает это без вопросов.
Платформа может прекратить поддержку слишком старой версии CLI. Курьер и слушатель сообщат требуемую версию и адрес загрузки, затем завершатся. Строка курьера также предлагает выполнить orchyst update. Актуальные версии продолжают работать как обычно.
А владелец может завершить все сеансы агента из панели. С этого момента клиент, всё ещё работающий со старым сеансом, отклоняется по одной причине — сеанс завершён — до перезапуска, который даёт ему новый сеанс. Перезапустите пул или слушатель, и он вернётся.
Запросы перед полем ввода
Только что запущенный инструмент иногда ставит диалог перед своим вводом — предложение обновиться, вопрос о доверии рабочей папке, вход в учётную запись. Курьер печатает только в то поле ввода, которое ожидает, и по замыслу не отвечает на диалоги, поэтому доставка, сделанная при открытом таком запросе, просто ждёт: указатель стоит в очереди во вводе терминала, подтверждение не приходит, и лестница заканчивается уведомлением вам, а не угаданным нажатием.
Вам об этом тоже сообщают: через несколько секунд после каждого запуска CLI один раз смотрит на экран и, если инструмент не дошёл до поля ввода, поднимает предупреждение — посчитанное в заголовке меню, записанное в журналы и с названной причиной, когда она распознана:
Доверие к рабочей папке сохраняется для проекта. Codex загружает .codex/config.toml только после подтверждения доверия; add и doctor предупреждают, если его нет. CLI сохраняет разрешение для 15 обычных инструментов Orchyst и не меняет уже сохранённый выбор, поэтому Codex спрашивает только о других инструментах Orchyst, не чаще одного раза для каждого инструмента за сеанс. Предложения обновить инструмент тоже могут появляться повторно. Подключитесь, ответьте и отсоединитесь; курьер никогда не подтверждает запрос за вас.
Замечено в тестовом прогоне для этой самой страницы: сборка Codex предложила обновиться при запуске, и обновление вышло из терминала. Курьер заметил выход и перезапустил с продолжением сессии — но человеку всё равно пришлось один раз закрыть запрос. Это и есть задуманное разделение труда.