Інструменти сесії
OpenClaw надає агентам інструменти для роботи між сесіями, перевірки статусу та оркестрації субагентів.Доступні інструменти
| Інструмент | Що він робить |
|---|---|
sessions_list | Перелічує сесії з необов’язковими фільтрами (kind, recency) |
sessions_history | Читає транскрипт конкретної сесії |
sessions_send | Надсилає повідомлення в іншу сесію й за потреби очікує |
sessions_spawn | Створює ізольовану сесію субагента для фонової роботи |
sessions_yield | Завершує поточний хід і очікує подальші результати від субагента |
subagents | Перелічує, спрямовує або зупиняє запущених субагентів для цієї сесії |
session_status | Показує картку в стилі /status і за потреби задає перевизначення моделі для сесії |
Перелік і читання сесій
sessions_list повертає сесії з їхнім ключем, kind, channel, model, кількістю token
і часовими позначками. Фільтрація доступна за kind (main, group, cron, hook,
node) або за recency (activeMinutes).
sessions_history отримує транскрипт розмови для конкретної сесії.
Типово результати інструментів виключені — передайте includeTools: true, щоб їх побачити.
Повернене представлення навмисно обмежене та відфільтроване з міркувань безпеки:
- текст помічника нормалізується перед відновленням:
- теги thinking видаляються
- службові блоки
<relevant-memories>/<relevant_memories>видаляються - прості текстові XML-блоки payload викликів інструментів, як-от
<tool_call>...</tool_call>,<function_call>...</function_call>,<tool_calls>...</tool_calls>і<function_calls>...</function_calls>, видаляються, включно з обрізаними payload, які так і не закриваються коректно - знижені до тексту службові блоки викликів/результатів інструментів, як-от
[Tool Call: ...],[Tool Result ...]і[Historical context ...], видаляються - витіклі керувальні токени моделі, як-от
<|assistant|>, інші ASCII токени<|...|>і повноширинні варіанти<|...|>, видаляються - некоректний XML викликів інструментів MiniMax, як-от
<invoke ...>/</minimax:tool_call>, видаляється
- текст, схожий на облікові дані/токени, редагується перед поверненням
- довгі текстові блоки обрізаються
- дуже великі історії можуть відкидати старіші рядки або замінювати надто великий рядок на
[sessions_history omitted: message too large] - інструмент повідомляє зведені прапорці, як-от
truncated,droppedMessages,contentTruncated,contentRedactedіbytes
"main"), або ID сесії
з попереднього виклику переліку.
Якщо вам потрібен точний транскрипт байт-у-байт, перевіряйте файл транскрипту на
диску, а не сприймайте sessions_history як сирий дамп.
Надсилання міжсесійних повідомлень
sessions_send доставляє повідомлення в іншу сесію й за потреби очікує
на відповідь:
- Надіслати й не чекати: установіть
timeoutSeconds: 0, щоб поставити в чергу й відразу повернутися. - Очікування відповіді: задайте тайм-аут і отримайте відповідь вбудовано.
REPLY_SKIP, щоб зупинити це раніше.
Допоміжні інструменти статусу та оркестрації
session_status — це легкий еквівалент /status для поточної
або іншої видимої сесії. Він повідомляє про використання, час, стан моделі/runtime і
пов’язаний контекст фонових завдань, якщо він є. Як і /status, він може заповнювати
розріджені лічильники token/cache з останнього запису використання в транскрипті, а
model=default скидає перевизначення для окремої сесії.
sessions_yield навмисно завершує поточний хід, щоб наступним повідомленням могла бути
подія продовження, на яку ви очікуєте. Використовуйте його після запуску субагентів, коли
хочете, щоб результати завершення прийшли наступним повідомленням, а не через побудову циклів опитування.
subagents — це допоміжний інструмент control-plane для вже запущених
субагентів OpenClaw. Він підтримує:
action: "list"для перевірки активних/нещодавніх запусківaction: "steer"для надсилання подальших вказівок активній дочірній сесіїaction: "kill"для зупинки однієї дочірньої сесії абоall
Запуск субагентів
sessions_spawn створює ізольовану сесію для фонового завдання. Він завжди
неблокувальний — відразу повертає runId і childSessionKey.
Основні параметри:
runtime: "subagent"(типово) або"acp"для агентів зовнішнього harness.- Перевизначення
modelіthinkingдля дочірньої сесії. thread: true, щоб прив’язати запуск до ланцюжка чату (Discord, Slack тощо).sandbox: "require", щоб примусово ввімкнути пісочницю для дочірньої сесії.
maxSpawnDepth >= 2, субагенти-оркестратори рівня depth-1 додатково отримують
sessions_spawn, subagents, sessions_list і sessions_history, щоб вони
могли керувати власними дочірніми сесіями. Листові запуски все одно не отримують рекурсивних
інструментів оркестрації.
Після завершення крок оголошення публікує результат у каналі запитувача.
Доставка завершення зберігає прив’язану маршрутизацію ланцюжка/теми, коли вона доступна, а якщо
джерело завершення ідентифікує лише канал, OpenClaw усе одно може повторно використати збережений маршрут
сесії запитувача (lastChannel / lastTo) для прямої доставки.
Про специфічну для ACP поведінку див. ACP Agents.
Видимість
Інструменти сесії мають область видимості, щоб обмежити те, що може бачити агент:| Рівень | Область |
|---|---|
self | Лише поточна сесія |
tree | Поточна сесія + запущені субагенти |
agent | Усі сесії цього агента |
all | Усі сесії (між агентами, якщо налаштовано) |
tree. Для сесій у пісочниці значення примусово обмежується до tree
незалежно від конфігурації.
Додаткове читання
- Керування сесіями — маршрутизація, життєвий цикл, обслуговування
- ACP Agents — запуск через зовнішній harness
- Мультиагентність — архітектура з кількома агентами
- Конфігурація Gateway — параметри конфігурації інструментів сесії