Один агент OpenClaw может безопасно работать сразу с двух устройств. Но для этого нужно разделять две вещи: очередь — это просто поток сообщений, а долговечность задач обеспечивают отдельные механизмы. Контекст живёт в общей сессии, а обязательства — в файлах вроде active-tasks.md.
В этом и заключается ключевой нюанс. В OpenClaw 2.0 (релиз v2026.8.1, анонсированный 30 августа 2026 года) появились многопользовательские общие сессии поверх Gateway, который остаётся единым доменом доверия. Поэтому два телефона, два ноутбука или два человека могут управлять одним запуском, не создавая каждому собственную ветку контекста (docs.openclaw.ai). Официальная документация отдельно подчёркивает: владение, присутствие и роли помогают координироваться, но не являются защитной изоляцией между враждебно настроенными пользователями (docs.openclaw.ai). На практике проблемы обычно возникают не с самой идеей общего доступа, а с очередью, сроком жизни сессии и памятью.
Телефон в руках, ноутбук на столе: где начинаются проблемы
Типичный сценарий с двумя устройствами часто вообще не подразумевает второго человека. Один пользователь управляет агентом с телефона, а сам OpenClaw работает на Mac Mini или VPS — нередко через Telegram. Один из пользователей описал это так: он попросил «my openclaw agent Monica from telegram to install mem0 locally on my mac mini» (x.com).
Когда к одному агенту подключается второе устройство или второй человек, пользователи обычно сталкиваются с четырьмя типами сбоев:
- Сообщения незаметно пропадают. Один из самых ценных советов сообщества звучит так: включить режим очереди, чтобы сообщения никогда не терялись молча —
queue mode enabled so messages never silently drop. Его предлагают сочетать сactive-tasks.md as persistent state for crash recoveryи файломBoot.md, который перечитывает задачи после перезапуска (x.com). Без этой связки сообщение, отправленное во время текущего хода агента, остаётся уязвимым фрагментом диалога, а не сохранённой рабочей задачей. - Инструкции исчезают после сжатия контекста или перезапуска. Один пользователь Reddit сформулировал проблему предельно точно:
«Надёжной очереди задач нет: когда агент говорит “я этим займусь”, это всего лишь обещание в разговоре». — u/Brave_Nobody_6909, r/openclaw
В той же ветке сообщают, что после compaction или перезапуска обещания исчезают, а агент игнорирует сохранённые runbook-файлы. В другом объяснении от мейнтейнера признаётся та же базовая закономерность: агент «идеально работает 20 минут», а затем «молча забывает инструкции и начинает действовать непредсказуемо», если неправильно организована память (x.com).
- Сессия сбрасывается прямо во время работы. В Telegram по умолчанию использовалась настройка канала
thread: { mode: "idle", idleMinutes: 180 }, которая сбрасывает сессию после нескольких часов простоя. Один пользователь, столкнувшийся с этим в сценарии «телефон как второй экран», увеличил срок до 4 дней (x.com). Переполнение контекста усугубляет ситуацию: чрезмерное использование инструментов может привести к повторной подстановке последнего сообщения, и агент начинает «отвечать на одно и то же снова и снова», а затем «молча деградирует» (x.com). - Сопряжение ломается ещё до мультиплеера. После одного из обновлений сопряжённые устройства потеряли области доступа
operator.read/operator.writeи попали в бесконечный цикл pairing с неработающими инструментами. Основатель проекта ответил: «This was me being overzealous in fixing a potential security issue» (x.com). Китайскоязычные пользователи столкнулись с той же проблемой в виде ошибки1008: pairing required: локальное устройство зависало в очереди Pending, пока не выполнялисьopenclaw devices listиdevices approve <UUID>(x.com).
Индикатор присутствия показывает, что кто-то печатает, но сам по себе он не превращает сообщение в надёжно сохранённую задачу.
Один Gateway — один домен доверия: общая сессия, отдельные агенты и владение
Главное изменение OpenClaw 2.0 — общие сессии. К активной работе может подключиться другой человек, сохранив весь текущий контекст; независимые обзоры назвали это переходом от инструмента для одного оператора к совместной работе (eesel.ai). Какую именно схему выбрать, определяют два понятия из официальной документации.
Многопользовательский режим означает, что несколько доверенных людей управляют одним агентом. У каждой общей сессии фиксируются три уровня: неизменяемый создатель (createdActor, записывается один раз), назначаемый владелец — аналог исполнителя в GitHub, которого можно менять в любой момент, — и история участников, то есть тех, кто действительно отправлял запросы (docs.openclaw.ai). Присутствие показывает зрителей и тех, кто набирает текст, однако черновики не попадают ни в модель, ни в расшифровку сессии. Атрибуция ходов намеренно считается приблизительной: ввод нескольких людей может объединиться в один ход агента (docs.openclaw.ai). На практике, если во время вызова инструмента отправить продолжение из другого канала, оно попадёт в транскрипт, но текущий ход сначала завершится. Поэтому вторая инструкция воспринимается скорее как указание для следующего шага, а не как прерывание (docs.openclaw.ai).
Мультиагентный режим означает, что один процесс Gateway обслуживает несколько изолированных агентов. У каждого из них своё рабочее пространство, собственный agentDir с профилями авторизации и реестром моделей, а также SQLite-хранилище сессий по адресу <agentDir>/openclaw-agent.sqlite (github.com). Привязка направляет входящие события канала конкретному агенту; побеждает наиболее точное совпадение. Один и тот же agentDir нельзя использовать для разных агентов: иначе они будут перезаписывать файл auth-profiles.json друг друга (stack-junkie.com). Минимальный пример: { agentId: "coding", match: { channel: "telegram", accountId: "coding-bot" } } направляет одного бота к одному агенту.
Главную фразу стоит запомнить дословно: «A gateway is one trust domain» (docs.openclaw.ai). Роли, фильтры владельцев и аватары не изолируют недоверенных пользователей. Если пользователи не доверяют друг другу, им нужны отдельные Gateway — в идеале на разных пользователях ОС или разных хостах.
| Что сравниваем | Один общий агент (многопользовательская сессия) | Отдельные агенты (мультиагентный режим) |
|---|---|---|
| Транскрипт диалога | Общий: оба устройства видят одну ветку | Изолированное SQLite-хранилище для каждого агента |
| Окно контекста | Общее: указания объединяются с активным ходом | Изолированное: межагентный поиск по транскриптам по умолчанию отсутствует |
| Память и файлы рабочего пространства | Общие AGENTS.md, заметки и wiki, если их не ограничили областью конкретного агента | Отдельные рабочие пространства; общие skills доступны только через ~/.openclaw/skills или extraDirs (github.com) |
| Учётные данные моделей | Возможны отдельные аккаунты пользователей; другим видна лишь метка, но для биллинга всё ещё могут использоваться общие fallback-аккаунты (docs.openclaw.ai) | Собственный agentDir на агента; данные обновления OAuth по умолчанию не переносятся и требуют явного разрешения на совместное использование (github.com) |
| Cron и автоматизации | Видны Gateway; администратор с operator.admin может управлять задачами другого пользователя (docs.openclaw.ai) | Доступны между агентами только если это разрешают agentToAgent и настройки видимости (github.com) |
| Очередь ожидания | Одна очередь на сессию | У каждого агента своя очередь и маршрутизация |
Если речь об одном человеке с двумя устройствами, выбирайте левую колонку. Если два человека не должны постоянно видеть историю друг друга, выбирайте правую. Если доступ нужно принудительно ограничить для недоверенных пользователей, используйте два Gateway. В Reddit-обсуждениях пар, использующих одного бота, совет сходится к одному: «create 2 agents, same auth profile, but 1 geared towards you... and the other to your wife» (u/mr-cto-apps, r/openclaw). В ветке о совместном использовании одного Telegram-бота пользователь советует: «most people in your situation just run two instances» (u/dertobi, r/openclaw). Даже после появления общих сессий в 2.0 этот подход остаётся верным для раздельной личной работы.
Куда попадает второе сообщение, пока агент занят
Полезно разделять три уровня: именно на границе между ними пользователи чаще всего теряют работу.
Уровень 1: очередь сессии. Текст, который вы отправляете, пока агент работает, добавляется к текущей сессии. Режим очереди заставляет его ждать, а не теряться; индикатор присутствия показывает, что агент находится в середине хода. В таком случае сообщение направляет следующий ход, а не прерывает текущий. Черновики набираемого текста эфемерны и никогда не попадают в контекст (docs.openclaw.ai). Со второго устройства лучше отправлять короткие и однозначные сообщения — например, «после завершения сделай X; не перезапускай Y». Документация прямо говорит, что при объединении ввода нескольких пользователей атрибуция ходов работает лишь приблизительно (docs.openclaw.ai).
Уровень 2: сохранённые задачи. Сообщение в очереди не равно долговечной рабочей задаче. После перезапуска Gateway, сжатия сессии или команды /new обещания из разговора могут исчезнуть. Решение сообщества, переживающее перезапуски, — не сообщение, а файл: active-tasks.md как состояние для восстановления после сбоя и Boot.md, который агент читает при перезапуске сессии и Gateway (x.com). Инструменты памяти могут повторно подставлять контекст, однако одно популярное объяснение предупреждает: даже загруженная память может быть сокращена. «The memory exists on disk. The agent just lost the ability to walk through it» (x.com).
Уровень 3: работа по расписанию. Cron и Automations выполняются, пока работает Gateway; если хост засыпает, расписание останавливается (eesel.ai). Один пользователь сообщил, что запуски cron делали агента «basically unusable during that time», поскольку история сессии переполняла контекст. Он посоветовал изолировать контексты по Telegram-топикам (x.com). Планировщик подходит для регулярной работы, но не заменяет постановку последующей инструкции в очередь.
Интерфейс очереди может отставать от реального состояния. В одной ветке пользователи видели, что запросы становятся в очередь, тогда как /subagents и /tasks ничего не показывали (reddit.com). Поэтому файл со второго уровня стоит считать проверкой выживаемости после перезапуска — независимо от того, что показывает UI очереди.
Настройка для двух устройств без потери инструкций
Эта схема подходит одному человеку с ноутбуком и телефоном либо двум доверенным коллегам в общей сессии. Она следует официальным инструкциям по быстрому запуску и production-развёртыванию (docs.openclaw.ai), а также учитывает меры против потери данных, к которым пришло сообщество.
- Разместите Gateway на постоянно работающем хосте и входите по идентификации. Подойдёт небольшой VPS, офисный Mac или Mac Mini. Привяжите Gateway к loopback и поставьте перед ним Tailscale Serve или Cloudflare Access вместо публичного порта или общего токена. Доступ на основе идентификации даёт персональную атрибуцию в сессиях и авторство коммитов; с общим токеном все выглядят как один профиль владельца (docs.openclaw.ai).
- Подключайте оба устройства к одной сессии, а не создавайте две. Откройте Control UI или чат-канал на каждом устройстве, явно назначьте владельца сессии через Control UI Assign to me / Assign to либо инструмент
sessionsassign_owner, а для передачи работы используйте @mentions. Для личных сообщений и групповых комнат требуются отдельные allowlist-списки (docs.openclaw.ai). Смена владельца меняет ответственность, но не права создателя на общий доступ или архивирование, поэтому создателя лучше не менять. - Включите очередь и обеспечьте выживание задач после перезапуска. Переведите общую сессию в режим очереди: тогда сообщение, отправленное в середине хода, будет ждать, а не конкурировать с текущей работой. Без этого режима, по сообщениям пользователей, текст может исчезать молча. Держите в рабочем пространстве
active-tasks.mdс одной строкой на каждое обязательство — готово / делается / далее — и добавьтеBoot.mdс инструкцией прочитать этот файл при запуске (x.com). Прежде чем полагаться на второе устройство, убедитесь, что модель действительно отвечает: одного сохранения учётных данных недостаточно для проверки (docs.openclaw.ai). - Увеличьте срок жизни сессии в каналах, которыми пользуетесь с телефона. Если Telegram служит вторым экраном и в вашей ветке используется сброс
thread: { mode: "idle", idleMinutes: 180 }, увеличьте интервал для долгой работы — один пользователь выставил 4 дня. Также разделяйте топики, чтобы вывод cron не засорял общий контекст. - Выдайте каждому человеку собственный аккаунт модели. В профилях Gateway можно хранить личные учётные данные. Новые сессии предпочитают персональный профиль по умолчанию, не меняя общий Gateway default, а другие пользователи видят только метку уровня пользователя, без email или ID аккаунта (docs.openclaw.ai). Вводить учётные данные нужно только через защищённый UI или скрытые запросы терминала, а не вставлять в разговор, где они попадут в общий транскрипт.
- Проверьте весь путь целиком. Со второго устройства отправьте сообщение во время активного хода и убедитесь, что оно сохранено и обработано после завершения текущей работы. Затем перезапустите Gateway и убедитесь, что
active-tasks.mdвосстанавливает обязательство. Официальный production-чек-лист заканчивается тем же требованием: прежде чем считать настройку готовой, проверьте полный сценарий (docs.openclaw.ai).
Как не превратить общий контекст в свалку
Большинство проблем с деградацией общего контекста решают три правила.
Подписывайте каждую запись в память. Самый незаметный сбой — правила без автора постепенно накапливаются, пока никто не решается их удалить. Один пользователь описал это так: «six months in the shared context is full of rules nobody can trace to a person, so nobody feels allowed to delete them», а предложенное решение — «author on every memory write» (x.com). Проблема возникает, когда записи общие, но авторства у них нет. Указывайте в постоянных заметках, кто и когда попросил внести правило, и раз в месяц проводите чистку.
Изолируйте место с меньшим уровнем доверия. Роли могут ограничивать доступ к сессиям, разрешённым агентам и областям operator. Гостевые сессии можно принудительно отправлять в песочницы с workspaceAccess: "none": тогда файловые и shell-инструменты получают приватное рабочее пространство вместо пространства общего агента (docs.openclaw.ai). Личные черновики храните в Draft-сессиях. Они не отображаются в боковых панелях других пользователей, но не скрыты от администраторов (docs.openclaw.ai).
Понимайте, когда делиться контекстом уже не стоит. Один оператор мультиагентной схемы назвал протекание контекста «biggest practical challenge»: агенты «drift into each other's territory» (u/BP041, r/openclaw). Китайскоязычные разработчики формулируют правило ещё прямее: настройте одного агента, а затем клонируйте его для каждой машины — «help it clone to a new device», чтобы настроенная конфигурация стала «one per person» (x.com). Синхронизировать следует только память и dotfiles, оставляя учётные данные и активные сессии на исходном устройстве (x.com). Это совпадает с официальным вариантом выхода: отдельные Memory Wiki vault для агентов (vault.scope = "agent"), явные общие Markdown-директории вместо межагентного поиска по транскриптам и отдельные Gateway там, где изоляция должна быть настоящей (github.com).
FAQ
Могут ли два устройства одновременно работать с одной сессией агента OpenClaw?
Да. Оба устройства подключаются к одной сессии; контекст хранится в сессии, а не на устройстве. Назначьте владельца и включите режим очереди, чтобы сообщение со второго устройства ожидало обработки (docs.openclaw.ai).
Почему инструкции пропадают после compaction, /new или перезапуска?
Потому что сообщение в чате — не сохранённая задача. Compaction сжимает контекст, /new начинает новую сессию, а перезапуск очищает состояние в памяти. Храните обязательства в active-tasks.md и добавьте Boot.md, который перечитывает файл (x.com).
Двум людям лучше делить одного агента или запускать по агенту каждому?
Один общий агент подходит, когда обоим нужен один и тот же диалог, память и очередь. Отдельные агенты — или отдельные Gateway — нужны, если история, учётные данные или права доступа не должны смешиваться: многопользовательские функции не обеспечивают защитную изоляцию (docs.openclaw.ai). Если настроена атрибуция GitHub, совместное управление может добавлять к коммитам трейлеры Co-authored-by (docs.openclaw.ai).
Делить одного или клонировать: выбор за 30 секунд
| Ваша ситуация | Что выбрать |
|---|---|
| Один человек, ноутбук и телефон | Одна общая сессия, включённый режим очереди, active-tasks.md + Boot.md, долгий idle timeout |
| Два доверенных коллеги, одна задача | Одна общая сессия, явно назначенный владелец, @mentions для передачи работы, подписанные записи памяти и гостевая песочница для младшего участника |
| Два человека, раздельная работа | Два агента — или два Gateway — с общими skills через ~/.openclaw/skills; никогда не используйте общий agentDir |
| Недоверенный доступ или доступ со стороны клиента | Отдельные Gateway на разных пользователях ОС или хостах; нужные сессии открывайте только на чтение через Session Share (docs.openclaw.ai) |
Режим очереди не даёт двум людям перебивать друг друга, но не разрешает конфликтующие инструкции: объединённый ввод всё равно может смешаться. А файл сохраняет эти инструкции после перезапуска.