agents.*, multiAgent.*, session.*,
messages.* і talk.*. Для каналів, інструментів, середовища виконання Gateway та інших
ключів верхнього рівня див. Довідник конфігурації.
Стандартні параметри агента
agents.defaults.workspace
Стандартне значення: OPENCLAW_WORKSPACE_DIR, якщо встановлено, інакше ~/.openclaw/workspace.
agents.defaults.workspace має пріоритет над
OPENCLAW_WORKSPACE_DIR. Використовуйте змінну середовища, щоб спрямувати стандартних агентів
на змонтований робочий простір, коли не хочете записувати цей шлях у конфігурацію.
agents.defaults.repoRoot
Необов’язковий корінь репозиторію, що показується в рядку Runtime системного промпта. Якщо не задано, OpenClaw автоматично визначає його, рухаючись угору від робочого простору.
agents.defaults.skills
Необов’язковий стандартний список дозволених skill для агентів, які не задають
agents.list[].skills.
- Пропустіть
agents.defaults.skills, щоб skills стандартно були без обмежень. - Пропустіть
agents.list[].skills, щоб успадкувати стандартні значення. - Задайте
agents.list[].skills: [], щоб вимкнути skills. - Непорожній список
agents.list[].skillsє остаточним набором для цього агента; він не об’єднується зі стандартними значеннями.
agents.defaults.skipBootstrap
Вимикає автоматичне створення файлів початкового налаштування робочого простору (AGENTS.md, SOUL.md, TOOLS.md, IDENTITY.md, USER.md, HEARTBEAT.md, BOOTSTRAP.md).
agents.defaults.skipOptionalBootstrapFiles
Пропускає створення вибраних необов’язкових файлів робочого простору, водночас продовжуючи записувати обов’язкові файли початкового налаштування. Допустимі значення: SOUL.md, USER.md, HEARTBEAT.md та IDENTITY.md.
agents.defaults.contextInjection
Керує тим, коли файли початкового налаштування робочого простору вставляються в системний промпт. Стандартне значення: "always".
"continuation-skip": безпечні ходи продовження (після завершеної відповіді асистента) пропускають повторне вставлення початкового налаштування робочого простору, зменшуючи розмір промпта. Запуски Heartbeat і повторні спроби після Compaction все одно перебудовують контекст."never": вимкнути початкове налаштування робочого простору та вставлення контекстних файлів на кожному ході. Використовуйте це лише для агентів, які повністю володіють життєвим циклом свого промпта (власні рушії контексту, нативні середовища виконання, що будують власний контекст, або спеціалізовані робочі процеси без початкового налаштування). Ходи Heartbeat і відновлення після Compaction також пропускають вставлення.
agents.list[].contextInjection. Пропущені значення успадковують
agents.defaults.contextInjection.
agents.defaults.bootstrapMaxChars
Максимальна кількість символів на файл початкового налаштування робочого простору перед обрізанням. Стандартне значення: 20000.
agents.list[].bootstrapMaxChars. Пропущені значення успадковують
agents.defaults.bootstrapMaxChars.
agents.defaults.bootstrapTotalMaxChars
Максимальна загальна кількість символів, що вставляються з усіх файлів початкового налаштування робочого простору. Стандартне значення: 60000.
agents.list[].bootstrapTotalMaxChars. Пропущені значення
успадковують agents.defaults.bootstrapTotalMaxChars.
Перевизначення профілю початкового налаштування для окремого агента
Використовуйте перевизначення профілю початкового налаштування для окремого агента, коли одному агенту потрібна інша поведінка вставлення промпта, ніж у спільних стандартних значеннях. Пропущені поля успадковуються зagents.defaults.
agents.defaults.bootstrapPromptTruncationWarning
Керує видимим для агента сповіщенням у системному промпті, коли контекст початкового налаштування обрізано.
Стандартне значення: "always".
"off": ніколи не вставляти текст сповіщення про обрізання в системний промпт."once": вставити стисле сповіщення один раз для кожної унікальної сигнатури обрізання."always": вставляти стисле сповіщення під час кожного запуску, коли є обрізання (рекомендовано).
Мапа володіння бюджетами контексту
OpenClaw має кілька великих бюджетів промпта/контексту, і вони навмисно розділені за підсистемами, а не всі проходять через один універсальний перемикач.agents.defaults.bootstrapMaxChars/agents.defaults.bootstrapTotalMaxChars: звичайне вставлення початкового налаштування робочого простору.agents.defaults.startupContext.*: одноразова преамбула запуску моделі під час скидання/старту, включно з нещодавніми щоденними файламиmemory/*.md. Прості команди чату/newі/resetпідтверджуються без виклику моделі.skills.limits.*: компактний список skills, що вставляється в системний промпт.agents.defaults.contextLimits.*: обмежені фрагменти середовища виконання та вставлені блоки, якими володіє середовище виконання.memory.qmd.limits.*: розмір фрагмента індексованого пошуку пам’яті та вставлення.
agents.list[].skillsLimits.maxSkillsPromptCharsagents.list[].contextInjectionagents.list[].bootstrapMaxCharsagents.list[].bootstrapTotalMaxCharsagents.list[].contextLimits.*
agents.defaults.startupContext
Керує преамбулою першого ходу запуску, що вставляється під час запусків моделі після скидання/старту.
Прості команди чату /new і /reset підтверджують скидання без виклику
моделі, тому вони не завантажують цю преамбулу.
agents.defaults.contextLimits
Спільні стандартні значення для обмежених поверхонь контексту середовища виконання.
memoryGetMaxChars: стандартна межа фрагментаmemory_getперед додаванням метаданих обрізання та сповіщення про продовження.memoryGetDefaultLines: стандартне вікно рядківmemory_get, колиlinesпропущено.toolResultMaxChars: розширена межа результатів live-інструментів, що використовується для збережених результатів і відновлення після переповнення. Залиште незаданою для автоматичної межі модельного контексту:16000символів нижче 100K токенів,32000символів на 100K+ токенів і64000символів на 200K+ токенів. Явні значення до1000000приймаються для моделей із довгим контекстом, але ефективна межа все одно обмежена приблизно 30% від вікна контексту моделі.openclaw doctor --deepдрукує ефективну межу, а doctor попереджає лише тоді, коли явне перевизначення застаріле або не має ефекту.postCompactionMaxChars: межа фрагмента AGENTS.md, що використовується під час вставлення оновлення після Compaction.
agents.list[].contextLimits
Перевизначення для окремого агента для спільних перемикачів contextLimits. Пропущені поля успадковують
з agents.defaults.contextLimits.
skills.limits.maxSkillsPromptChars
Глобальна межа для компактного списку skills, що вставляється в системний промпт. Це
не впливає на читання файлів SKILL.md на вимогу.
agents.list[].skillsLimits.maxSkillsPromptChars
Перевизначення для окремого агента для бюджету промпта skills.
agents.defaults.imageMaxDimensionPx
Максимальний розмір у пікселях для найдовшої сторони зображення в блоках зображень транскрипту/інструментів перед викликами провайдера.
Стандартне значення: 1200.
Нижчі значення зазвичай зменшують використання vision-токенів і розмір корисного навантаження запиту для запусків із великою кількістю скриншотів.
Вищі значення зберігають більше візуальних деталей.
agents.defaults.imageQuality
Перевага стиснення/деталізації інструмента зображень для зображень, завантажених зі шляхів файлів, URL-адрес і медіапосилань.
Стандартне значення: auto.
OpenClaw адаптує драбину зміни розміру до вибраної моделі зображень. Наприклад, Claude Opus 4.8, OpenAI GPT-5.5, Qwen VL і розміщені моделі Llama 4 vision можуть використовувати більші зображення, ніж старіші/стандартні шляхи vision із високою деталізацією, тоді як ходи з кількома зображеннями стискаються агресивніше в режимі auto, щоб контролювати витрати токенів і затримку.
Значення:
auto: адаптуватися до обмежень моделі та кількості зображень.efficient: віддавати перевагу меншим зображенням для нижчого використання токенів і байтів.balanced: використовувати стандартну середню драбину.high: зберігати більше деталей для скриншотів, діаграм і зображень документів.
agents.defaults.userTimezone
Часовий пояс для контексту системного промпта (не для часових міток повідомлень). Повертається до часового поясу хоста.
agents.defaults.timeFormat
Формат часу в системному промпті. Стандартне значення: auto (налаштування ОС).
agents.defaults.model
model: приймає або рядок ("provider/model"), або обʼєкт ({ primary, fallbacks }).- Рядкова форма задає лише основну модель.
- Обʼєктна форма задає основну модель і впорядковані резервні моделі для перемикання в разі збою.
imageModel: приймає або рядок ("provider/model"), або обʼєкт ({ primary, fallbacks }).- Використовується шляхом інструмента
imageяк його конфігурація моделі зору. - Також використовується як резервна маршрутизація, коли вибрана/типова модель не може приймати зображення на вході.
- Надавайте перевагу явним посиланням
provider/model. Голі ID приймаються для сумісності; якщо голий ID однозначно відповідає налаштованому запису з підтримкою зображень уmodels.providers.*.models, OpenClaw кваліфікує його для цього провайдера. Неоднозначні налаштовані збіги потребують явного префікса провайдера.
- Використовується шляхом інструмента
imageGenerationModel: приймає або рядок ("provider/model"), або обʼєкт ({ primary, fallbacks }).- Використовується спільною можливістю генерації зображень і будь-якою майбутньою поверхнею інструмента/plugin, що генерує зображення.
- Типові значення:
google/gemini-3.1-flash-image-previewдля нативної генерації зображень Gemini,fal/fal-ai/flux/devдля fal,openai/gpt-image-2для OpenAI Images абоopenai/gpt-image-1.5для виводу OpenAI PNG/WebP із прозорим фоном. - Якщо ви вибираєте провайдер/модель напряму, також налаштуйте відповідну автентифікацію провайдера (наприклад,
GEMINI_API_KEYабоGOOGLE_API_KEYдляgoogle/*,OPENAI_API_KEYабо OpenAI Codex OAuth дляopenai/gpt-image-2/openai/gpt-image-1.5,FAL_KEYдляfal/*). - Якщо пропущено,
image_generateусе одно може вивести типовий провайдер, підкріплений автентифікацією. Спершу він пробує поточного типового провайдера, потім решту зареєстрованих провайдерів генерації зображень у порядку provider-id.
musicGenerationModel: приймає або рядок ("provider/model"), або обʼєкт ({ primary, fallbacks }).- Використовується спільною можливістю генерації музики та вбудованим інструментом
music_generate. - Типові значення:
google/lyria-3-clip-preview,google/lyria-3-pro-previewабоminimax/music-2.6. - Якщо пропущено,
music_generateусе одно може вивести типовий провайдер, підкріплений автентифікацією. Спершу він пробує поточного типового провайдера, потім решту зареєстрованих провайдерів генерації музики в порядку provider-id. - Якщо ви вибираєте провайдер/модель напряму, також налаштуйте відповідну автентифікацію/API-ключ провайдера.
- Використовується спільною можливістю генерації музики та вбудованим інструментом
videoGenerationModel: приймає або рядок ("provider/model"), або обʼєкт ({ primary, fallbacks }).- Використовується спільною можливістю генерації відео та вбудованим інструментом
video_generate. - Типові значення:
qwen/wan2.6-t2v,qwen/wan2.6-i2v,qwen/wan2.6-r2v,qwen/wan2.6-r2v-flashабоqwen/wan2.7-r2v. - Якщо пропущено,
video_generateусе одно може вивести типовий провайдер, підкріплений автентифікацією. Спершу він пробує поточного типового провайдера, потім решту зареєстрованих провайдерів генерації відео в порядку provider-id. - Якщо ви вибираєте провайдер/модель напряму, також налаштуйте відповідну автентифікацію/API-ключ провайдера.
- Офіційний plugin генерації відео Qwen підтримує до 1 вихідного відео, 1 вхідного зображення, 4 вхідних відео, тривалість 10 секунд, а також параметри рівня провайдера
size,aspectRatio,resolution,audioіwatermark.
- Використовується спільною можливістю генерації відео та вбудованим інструментом
pdfModel: приймає або рядок ("provider/model"), або обʼєкт ({ primary, fallbacks }).- Використовується інструментом
pdfдля маршрутизації моделі. - Якщо пропущено, інструмент PDF повертається до
imageModel, а потім до розвʼязаної моделі сеансу/типової моделі.
- Використовується інструментом
pdfMaxBytesMb: типовий ліміт розміру PDF для інструментаpdf, колиmaxBytesMbне передано під час виклику.pdfMaxPages: типова максимальна кількість сторінок, яку враховує резервний режим видобування в інструментіpdf.verboseDefault: типовий рівень докладності для агентів. Значення:"off","on","full". Типово:"off".toolProgressDetail: режим деталізації для підсумків інструментів/verboseі рядків чернеток прогресу інструментів. Значення:"explain"(типово, компактні зрозумілі людині мітки) або"raw"(додає сиру команду/деталі, коли доступно).agents.list[].toolProgressDetailдля окремого агента перевизначає це типове значення.reasoningDefault: типова видимість міркувань для агентів. Значення:"off","on","stream".agents.list[].reasoningDefaultдля окремого агента перевизначає це типове значення. Налаштовані типові значення міркувань застосовуються лише для власників, авторизованих відправників або контекстів Gateway адміністратора-оператора, коли не задано перевизначення міркувань для повідомлення чи сеансу.elevatedDefault: типовий рівень підвищеного виводу для агентів. Значення:"off","on","ask","full". Типово:"on".model.primary: форматprovider/model(наприклад,openai/gpt-5.5для доступу через API-ключ OpenAI або Codex OAuth). Якщо ви пропускаєте провайдера, OpenClaw спершу пробує псевдонім, потім унікальний збіг налаштованого провайдера для цього точного ID моделі, і лише потім повертається до налаштованого типового провайдера (застаріла поведінка сумісності, тому надавайте перевагу явномуprovider/model). Якщо цей провайдер більше не надає налаштовану типову модель, OpenClaw повертається до першої налаштованої пари провайдер/модель замість показу застарілого типового значення видаленого провайдера.models: налаштований каталог моделей і список дозволених моделей для/model. Кожен запис може міститиalias(скорочення) іparams(специфічні для провайдера, наприкладtemperature,maxTokens,cacheRetention,context1m,responsesServerCompaction,responsesCompactThreshold, маршрутизація OpenRouterprovider,chat_template_kwargs,extra_body/extraBody).- Використовуйте записи
provider/*, як-от"openai/*": {}або"vllm/*": {}, щоб показати всі виявлені моделі для вибраних провайдерів без ручного перелічення кожного ID моделі. - Додайте
agentRuntimeдо записуprovider/*, коли кожна динамічно виявлена модель для цього провайдера має використовувати той самий runtime. Точна політика runtime дляprovider/modelусе одно має пріоритет над wildcard. - Безпечні редагування: використовуйте
openclaw config set agents.defaults.models '<json>' --strict-json --merge, щоб додати записи.config setвідмовляється від замін, які видалили б наявні записи списку дозволених, якщо не передати--replace. - Потоки налаштування/онбордингу в межах провайдера обʼєднують вибрані моделі провайдера в цю мапу та зберігають уже налаштованих неповʼязаних провайдерів.
- Для прямих моделей OpenAI Responses серверна Compaction вмикається автоматично. Використовуйте
params.responsesServerCompaction: false, щоб припинити інʼєкціюcontext_management, абоparams.responsesCompactThreshold, щоб перевизначити поріг. Див. серверна Compaction OpenAI.
- Використовуйте записи
params: глобальні типові параметри провайдера, що застосовуються до всіх моделей. Задаються вagents.defaults.params(наприклад,{ cacheRetention: "long" }).- Пріоритет обʼєднання
params(конфігурація):agents.defaults.params(глобальна база) перевизначаєтьсяagents.defaults.models["provider/model"].params(для окремої моделі), потімagents.list[].params(відповідний ID агента) перевизначає за ключем. Докладніше див. кешування промптів. models.providers.openrouter.params.provider: типова політика маршрутизації провайдера на рівні всього OpenRouter. OpenClaw передає її в обʼєктproviderзапиту OpenRouter;agents.defaults.models["openrouter/<model>"].params.providerдля окремої моделі та параметри агента перевизначають за ключем. Див. маршрутизація провайдера OpenRouter.params.extra_body/params.extraBody: розширений наскрізний JSON, що обʼєднується в тіла запитівapi: "openai-completions"для проксі, сумісних з OpenAI. Якщо він конфліктує зі згенерованими ключами запиту, додаткове тіло має пріоритет; ненативні маршрути completions після цього все одно вилучають OpenAI-onlystore.params.chat_template_kwargs: аргументи chat-template, сумісні з vLLM/OpenAI, що обʼєднуються в тіла запитів верхнього рівняapi: "openai-completions". Дляvllm/nemotron-3-*з вимкненим thinking вбудований plugin vLLM автоматично надсилаєenable_thinking: falseіforce_nonempty_content: true; явніchat_template_kwargsперевизначають згенеровані типові значення, аextra_body.chat_template_kwargsусе одно має остаточний пріоритет. Налаштовані моделі thinking vLLM Qwen і Nemotron показують бінарні варіанти/think(off,on) замість багаторівневої шкали зусиль.compat.thinkingFormat: стиль thinking payload, сумісний з OpenAI. Використовуйте"together"для Together-stylereasoning.enabled,"qwen"для Qwen-style верхнього рівняenable_thinkingабо"qwen-chat-template"дляchat_template_kwargs.enable_thinkingу бекендах родини Qwen, що підтримують chat-template kwargs на рівні запиту, як-от vLLM. OpenClaw відображає вимкнений thinking уfalse, а ввімкнений thinking уtrue, і налаштовані моделі vLLM Qwen показують бінарні варіанти/thinkдля цих форматів.compat.supportedReasoningEfforts: список reasoning effort для окремої моделі, сумісний з OpenAI. Додайте"xhigh"для користувацьких endpoints, які справді його приймають; тоді OpenClaw показує/think xhighу меню команд, рядках сеансів Gateway, валідації patch сеансу, валідації CLI агента та валідаціїllm-taskдля цієї налаштованої пари провайдер/модель. Використовуйтеcompat.reasoningEffortMap, коли бекенд очікує специфічне для провайдера значення для канонічного рівня.params.preserveThinking: opt-in лише для Z.AI для збереженого thinking. Коли ввімкнено і thinking увімкнений, OpenClaw надсилаєthinking.clear_thinking: falseі відтворює попереднійreasoning_content; див. thinking і збережений thinking Z.AI.localService: необовʼязковий менеджер процесів рівня провайдера для локальних/самостійно розміщених серверів моделей. Коли вибрана модель належить цьому провайдеру, OpenClaw перевіряєhealthUrl(абоbaseUrl + "/models"), запускаєcommandзargs, якщо endpoint недоступний, чекає доreadyTimeoutMs, а потім надсилає запит моделі.commandмає бути абсолютним шляхом.idleStopMs: 0залишає процес активним до виходу OpenClaw; додатне значення зупиняє процес, запущений OpenClaw, після такої кількості мілісекунд простою. Див. локальні служби моделей.- Політика runtime належить провайдерам або моделям, а не
agents.defaults. Використовуйтеmodels.providers.<provider>.agentRuntimeдля правил на рівні провайдера абоagents.defaults.models["provider/model"].agentRuntime/agents.list[].models["provider/model"].agentRuntimeдля правил окремої моделі. Агентські моделі OpenAI в офіційного провайдера OpenAI типово вибирають Codex. - Записувачі конфігурації, що змінюють ці поля (наприклад,
/models set,/models set-imageі команди додавання/видалення резервних варіантів), зберігають канонічну обʼєктну форму та, коли можливо, зберігають наявні списки резервних варіантів. maxConcurrent: максимальна кількість паралельних запусків агентів між сеансами (кожен сеанс усе одно серіалізований). Типово: 4.
Політика runtime
id:"auto","openclaw", ідентифікатор зареєстрованого harness Plugin або підтримуваний псевдонім CLI-бекенда. Вбудований Codex Plugin реєструєcodex; вбудований Anthropic Plugin надає CLI-бекендclaude-cli.id: "auto"дозволяє зареєстрованим harness Plugin забирати підтримувані ходи та використовує OpenClaw, коли жоден harness не збігається. Явний runtime Plugin, наприкладid: "codex", вимагає цей harness і завершується відмовою, якщо він недоступний або дає збій.id: "pi"приймається лише як застарілий псевдонім дляopenclaw, щоб зберегти поставлені конфігурації з v2026.5.22 і раніших версій. Нова конфігурація має використовуватиopenclaw.- Пріоритет runtime: спочатку точна політика моделі (
agents.list[].models["provider/model"],agents.defaults.models["provider/model"]абоmodels.providers.<provider>.models[]), потімagents.list[]/agents.defaults.models["provider/*"], потім політика на рівні провайдера вmodels.providers.<provider>.agentRuntime. - Ключі runtime для всього агента є застарілими.
agents.defaults.agentRuntime,agents.list[].agentRuntime, закріплення runtime сесії таOPENCLAW_AGENT_RUNTIMEігноруються під час вибору runtime. Запустітьopenclaw doctor --fix, щоб видалити застарілі значення. - Моделі агентів OpenAI типово використовують harness Codex; provider/model
agentRuntime.id: "codex"залишається чинним, коли ви хочете зробити це явним. - Для розгортань Claude CLI надавайте перевагу
model: "anthropic/claude-opus-4-8"разом із прив’язаним до моделіagentRuntime.id: "claude-cli". Застарілі посилання на моделіclaude-cli/claude-opus-4-7досі працюють для сумісності, але нова конфігурація має зберігати канонічний вибір provider/model і задавати бекенд виконання в політиці runtime provider/model. - Це керує лише виконанням текстових ходів агента. Генерація медіа, vision, PDF, музика, відео та TTS досі використовують свої налаштування provider/model.
agents.defaults.models):
| Псевдонім | Модель |
|---|---|
opus | anthropic/claude-opus-4-8 |
sonnet | anthropic/claude-sonnet-4-6 |
gpt | openai/gpt-5.4 |
gpt-mini | openai/gpt-5.4-mini |
gpt-nano | openai/gpt-5.4-nano |
gemini | google/gemini-3.1-pro-preview |
gemini-flash | google/gemini-3-flash-preview |
gemini-flash-lite | google/gemini-3.1-flash-lite |
--thinking off або самостійно не визначите agents.defaults.models["zai/<model>"].params.thinking.
Моделі Z.AI типово вмикають tool_stream для потокової передачі викликів інструментів. Задайте agents.defaults.models["zai/<model>"].params.tool_stream як false, щоб вимкнути це.
Anthropic Claude Opus 4.8 в OpenClaw типово тримає мислення вимкненим; коли адаптивне мислення явно ввімкнене, належне провайдеру типове значення зусилля Anthropic дорівнює high. Моделі Claude 4.6 типово використовують adaptive, коли явний рівень мислення не задано.
agents.defaults.cliBackends
Необов’язкові CLI-бекенди для резервних запусків лише з текстом (без викликів інструментів). Корисно як резерв, коли API-провайдери дають збій.
- CLI-бекенди орієнтовані на текст; інструменти завжди вимкнені.
- Сесії підтримуються, коли задано
sessionArg. - Пропускання зображень підтримується, коли
imageArgприймає шляхи до файлів. reseedFromRawTranscriptWhenUncompacted: trueдозволяє бекенду відновлювати безпечні інвалідовані сесії з обмеженого хвоста сирого транскрипту OpenClaw до того, як з’явиться перше резюме Compaction. Зміни профілю автентифікації або епохи облікових даних усе одно ніколи не виконують raw-reseed.
agents.defaults.promptOverlays
Незалежні від провайдера накладення промпта, що застосовуються за сімейством моделей на зібраних OpenClaw поверхнях промпта. Ідентифікатори моделей сімейства GPT-5 отримують спільний контракт поведінки в маршрутах OpenClaw/провайдера; personality керує лише дружнім шаром стилю взаємодії. Нативні маршрути app-server Codex зберігають базові/модельні інструкції, що належать Codex, замість цього накладення OpenClaw GPT-5, а OpenClaw вимикає вбудовану personality Codex для нативних потоків.
"friendly"(типово) і"on"вмикають дружній шар стилю взаємодії."off"вимикає лише дружній шар; позначений контракт поведінки GPT-5 залишається ввімкненим.- Застарілий
plugins.entries.openai.config.personalityдосі читається, коли це спільне налаштування не задано.
agents.defaults.heartbeat
Періодичні запуски Heartbeat.
every: рядок тривалості (ms/s/m/h). Типово:30m(автентифікація за API-ключем) або1h(OAuth-автентифікація). Задайте0m, щоб вимкнути.includeSystemPromptSection: коли false, пропускає розділ Heartbeat із системного промпта та пропускає ін’єкціюHEARTBEAT.mdу bootstrap-контекст. Типово:true.suppressToolErrorWarnings: коли true, приглушує payload-и попереджень про помилки інструментів під час запусків Heartbeat.timeoutSeconds: максимальний час у секундах, дозволений для ходу агента Heartbeat, перш ніж його буде перервано. Залиште незаданим, щоб використовуватиagents.defaults.timeoutSeconds, якщо його задано, інакше cadence Heartbeat з обмеженням 600 секунд.directPolicy: політика доставки direct/DM.allow(типово) дозволяє доставку до прямої цілі.blockприглушує доставку до прямої цілі та видаєreason=dm-blocked.lightContext: коли true, запуски Heartbeat використовують полегшений bootstrap-контекст і зберігають лишеHEARTBEAT.mdіз bootstrap-файлів робочої області.isolatedSession: коли true, кожен Heartbeat запускається у свіжій сесії без попередньої історії розмови. Такий самий шаблон ізоляції, як cronsessionTarget: "isolated". Зменшує вартість токенів на кожен Heartbeat приблизно зі 100K до 2-5K токенів.skipWhenBusy: коли true, запуски Heartbeat відкладаються на додаткових зайнятих lane цього агента: його власна прив’язана до ключа сесії робота subagent або вкладених команд. Lane Cron завжди відкладають Heartbeat, навіть без цього прапорця.- Для кожного агента: задайте
agents.list[].heartbeat. Коли будь-який агент визначаєheartbeat, Heartbeat запускають лише ці агенти. - Heartbeat виконують повні ходи агента — коротші інтервали спалюють більше токенів.
agents.defaults.compaction
mode:defaultабоsafeguard(фрагментоване узагальнення для довгих історій). Див. Compaction.provider: ідентифікатор зареєстрованого Plugin постачальника Compaction. Коли задано, викликаєтьсяsummarize()постачальника замість вбудованого узагальнення LLM. У разі помилки повертається до вбудованого. Задання постачальника примусово встановлюєmode: "safeguard". Див. Compaction.timeoutSeconds: максимальна кількість секунд, дозволена для однієї операції Compaction, перш ніж OpenClaw її перерве. Типово:180.keepRecentTokens: бюджет точки відсікання агента для дослівного збереження найновішого хвоста транскрипту. Ручний/compactвраховує це, коли значення задано явно; інакше ручна Compaction є жорсткою контрольною точкою.identifierPolicy:strict(типово),offабоcustom.strictдодає на початок вбудовані вказівки щодо збереження непрозорих ідентифікаторів під час узагальнення Compaction.identifierInstructions: необов’язковий власний текст для збереження ідентифікаторів, що використовується, колиidentifierPolicy=custom.qualityGuard: перевірки з повторною спробою у разі некоректно сформованого виводу для safeguard-узагальнень. Увімкнено типово в режимі safeguard; задайтеenabled: false, щоб пропустити аудит.midTurnPrecheck: необов’язкова перевірка навантаження циклу інструментів. Колиenabled: true, OpenClaw перевіряє навантаження контексту після додавання результатів інструментів і перед наступним викликом моделі. Якщо контекст більше не вміщується, він перериває поточну спробу перед надсиланням промпта та повторно використовує наявний шлях відновлення після попередньої перевірки, щоб обрізати результати інструментів або виконати Compaction і повторити спробу. Працює з обома режимами Compaction:defaultіsafeguard. Типово: вимкнено.postCompactionSections: необов’язкові назви розділів H2/H3 з AGENTS.md для повторного вставлення після Compaction. Повторне вставлення вимкнено, коли значення не задано або задано як[]. Явне задання["Session Startup", "Red Lines"]вмикає цю пару та зберігає застарілий резервний варіантEvery Session/Safety. Вмикайте це лише тоді, коли додатковий контекст вартий ризику дублювання проєктних вказівок, уже зафіксованих у підсумку Compaction.model: необов’язковийprovider/model-idабо голий псевдонім зagents.defaults.modelsлише для узагальнення Compaction. Голі псевдоніми розв’язуються перед відправленням; налаштовані буквальні ідентифікатори моделей зберігають пріоритет у разі колізій. Використовуйте це, коли основна сесія має залишатися на одній моделі, а підсумки Compaction мають виконуватися на іншій; якщо не задано, Compaction використовує основну модель сесії.maxActiveTranscriptBytes: необов’язковий поріг у байтах (numberабо рядки на кшталт"20mb"), який запускає звичайну локальну Compaction перед запуском, коли активний JSONL перевищує поріг. ПотребуєtruncateAfterCompaction, щоб успішна Compaction могла перейти до меншого наступного транскрипту. Вимкнено, коли не задано або0.notifyUser: колиtrue, надсилає користувачу короткі сповіщення, коли Compaction починається і коли завершується (наприклад, “Compacting context…” і “Compaction complete”). Типово вимкнено, щоб Compaction залишалася беззвучною.memoryFlush: беззвучний агентний хід перед автоматичною Compaction для збереження довготривалих спогадів. Задайтеmodelяк точний постачальник/модель, наприкладollama/qwen3:8b, коли цей службовий хід має залишатися на локальній моделі; перевизначення не успадковує резервний ланцюг активної сесії. Пропускається, коли робочий простір доступний лише для читання.
agents.defaults.runRetries
Межі ітерацій повторних спроб зовнішнього циклу запуску для вбудованого runtime агента, щоб запобігти нескінченним циклам виконання під час відновлення після помилки. Зауважте, що це налаштування наразі застосовується лише до вбудованого runtime агента, а не до runtime ACP або CLI.
base: базова кількість ітерацій повторних спроб запуску для зовнішнього циклу запуску. Типово:24.perProfile: додаткові ітерації повторних спроб запуску, що надаються для кожного кандидата резервного профілю. Типово:8.min: мінімальна абсолютна межа для ітерацій повторних спроб запуску. Типово:32.max: максимальна абсолютна межа для ітерацій повторних спроб запуску, щоб запобігти неконтрольованому виконанню. Типово:160.
agents.defaults.contextPruning
Обрізає старі результати інструментів з контексту в пам’яті перед надсиланням до LLM. Не змінює історію сесії на диску.
cache-ttl mode behavior
cache-ttl mode behavior
mode: "cache-ttl"вмикає проходи обрізання.ttlкерує тим, як часто обрізання може запускатися знову (після останнього звернення до кешу).- Обрізання спершу м’яко скорочує завеликі результати інструментів, а потім, за потреби, повністю очищає старіші результати інструментів.
softTrimRatioіhardClearRatioприймають значення від0.0до1.0; валідація конфігурації відхиляє значення поза цим діапазоном.
... посередині.Повне очищення замінює весь результат інструмента заповнювачем.Примітки:- Блоки зображень ніколи не скорочуються й не очищуються.
- Коефіцієнти базуються на символах (приблизно), а не на точній кількості токенів.
- Якщо існує менше ніж
keepLastAssistantsповідомлень асистента, обрізання пропускається.
Блокова потокова передача
- Канали, відмінні від Telegram, потребують явного
*.blockStreaming: true, щоб увімкнути блокові відповіді. - Перевизначення каналів:
channels.<channel>.blockStreamingCoalesce(і варіанти для окремих облікових записів). Signal/Slack/Discord/Google Chat типово використовуютьminChars: 1500. humanDelay: випадкова пауза між блоковими відповідями.natural= 800–2500 мс. Перевизначення для агента:agents.list[].humanDelay.
Індикатори набору
- Типові значення:
instantдля прямих чатів/згадок,messageдля групових чатів без згадки. - Перевизначення для сесії:
session.typingMode,session.typingIntervalSeconds.
agents.defaults.sandbox
Необов’язкова ізоляція для вбудованого агента. Повний посібник див. у Ізоляція.
Sandbox details
Sandbox details
Backend:Режим OpenShell:
docker: локальний runtime Docker (типово)ssh: універсальний віддалений runtime на базі SSHopenshell: runtime OpenShell
backend: "openshell", специфічні для runtime налаштування переміщуються до
plugins.entries.openshell.config.Конфігурація backend SSH:target: ціль SSH у форміuser@host[:port]command: команда клієнта SSH (типово:ssh)workspaceRoot: абсолютний віддалений корінь, що використовується для робочих просторів за областямиidentityFile/certificateFile/knownHostsFile: наявні локальні файли, що передаються до OpenSSHidentityData/certificateData/knownHostsData: вбудований вміст або SecretRefs, які OpenClaw матеріалізує у тимчасові файли під час runtimestrictHostKeyChecking/updateHostKeys: регулятори політики ключів хоста OpenSSH
identityDataмає пріоритет надidentityFilecertificateDataмає пріоритет надcertificateFileknownHostsDataмає пріоритет надknownHostsFile- Значення
*Dataна базі SecretRef розв’язуються з активного знімка runtime секретів перед запуском сесії ізоляції
- одноразово засіває віддалений робочий простір після створення або повторного створення
- потім зберігає віддалений робочий простір SSH канонічним
- маршрутизує
exec, файлові інструменти та медіашляхи через SSH - не синхронізує віддалені зміни назад на хост автоматично
- не підтримує браузерні контейнери ізоляції
none: робочий простір ізоляції за областю під~/.openclaw/sandboxesro: робочий простір ізоляції в/workspace, робочий простір агента змонтовано лише для читання в/agentrw: робочий простір агента змонтовано для читання/запису в/workspace
session: контейнер + робочий простір для кожної сесіїagent: один контейнер + робочий простір для кожного агента (типово)shared: спільний контейнер і робочий простір (без міжсесійної ізоляції)
mirror: засіяти віддалене середовище з локального перед виконанням, синхронізувати назад після виконання; локальний робочий простір лишається канонічнимremote: засіяти віддалене середовище один раз під час створення пісочниці, а потім тримати віддалений робочий простір канонічним
remote локальні для хоста зміни, зроблені поза OpenClaw, не синхронізуються в пісочницю автоматично після кроку засівання.
Транспортом є SSH у пісочницю OpenShell, але Plugin володіє життєвим циклом пісочниці та необов’язковою дзеркальною синхронізацією.setupCommand виконується один раз після створення контейнера (через sh -lc). Потрібні вихідний мережевий доступ, корінь із правом запису, користувач root.Контейнери за замовчуванням мають network: "none" — встановіть "bridge" (або власну bridge-мережу), якщо агенту потрібен вихідний доступ.
"host" заблоковано. "container:<id>" заблоковано за замовчуванням, якщо ви явно не встановите
sandbox.docker.dangerouslyAllowContainerNamespaceJoin: true (аварійний обхід).
Запуски app-server Codex в активній пісочниці OpenClaw використовують це саме налаштування вихідного доступу для свого нативного мережевого доступу в code-mode.Вхідні вкладення розміщуються в media/inbound/* в активному робочому просторі.docker.binds монтує додаткові директорії хоста; глобальні прив’язки та прив’язки для окремих агентів об’єднуються.Ізольований браузер (sandbox.browser.enabled): Chromium + CDP у контейнері. URL noVNC вставляється в системний prompt. Не потребує browser.enabled в openclaw.json.
Доступ спостерігача noVNC за замовчуванням використовує автентифікацію VNC, а OpenClaw видає короткоживучий URL із токеном (замість відкривати пароль у спільному URL).allowHostControl: false(за замовчуванням) блокує ізольованим сесіям націлювання на браузер хоста.networkза замовчуванням маєopenclaw-sandbox-browser(виділена bridge-мережа). Встановлюйтеbridgeлише тоді, коли явно потрібне глобальне bridge-підключення.cdpSourceRangeнеобов’язково обмежує вхідний CDP-доступ на межі контейнера діапазоном CIDR (наприклад,172.21.0.1/32).sandbox.browser.bindsмонтує додаткові директорії хоста лише в контейнер браузера пісочниці. Якщо задано (включно з[]), це замінюєdocker.bindsдля контейнера браузера.- Типові параметри запуску визначені в
scripts/sandbox-browser-entrypoint.shі налаштовані для контейнерних хостів:--remote-debugging-address=127.0.0.1--remote-debugging-port=<derived from OPENCLAW_BROWSER_CDP_PORT>--user-data-dir=${HOME}/.chrome--no-first-run--no-default-browser-check--disable-3d-apis--disable-gpu--disable-software-rasterizer--disable-dev-shm-usage--disable-background-networking--disable-features=TranslateUI--disable-breakpad--disable-crash-reporter--renderer-process-limit=2--no-zygote--metrics-recording-only--disable-extensions(увімкнено за замовчуванням)--disable-3d-apis,--disable-software-rasterizerі--disable-gpuувімкнені за замовчуванням, і їх можна вимкнути за допомогоюOPENCLAW_BROWSER_DISABLE_GRAPHICS_FLAGS=0, якщо цього потребує використання WebGL/3D.OPENCLAW_BROWSER_DISABLE_EXTENSIONS=0знову вмикає розширення, якщо ваш workflow залежить від них.--renderer-process-limit=2можна змінити за допомогоюOPENCLAW_BROWSER_RENDERER_PROCESS_LIMIT=<N>; встановіть0, щоб використовувати типовий ліміт процесів Chromium.- плюс
--no-sandbox, коли ввімкненоnoSandbox. - Значення за замовчуванням є базовою лінією образу контейнера; використовуйте власний образ браузера з власною точкою входу, щоб змінити типові параметри контейнера.
sandbox.docker.binds працюють лише з Docker.
Збірка образів (із checkout вихідного коду):
docker build.
agents.list (перевизначення для окремих агентів)
Використовуйте agents.list[].tts, щоб дати агенту власного провайдера TTS, голос, модель,
стиль або режим auto-TTS. Блок агента глибоко об’єднується поверх глобального
messages.tts, тому спільні облікові дані можуть лишатися в одному місці, а окремі
агенти перевизначають лише потрібні їм поля голосу або провайдера. Перевизначення активного агента
застосовується до автоматичних озвучених відповідей, /tts audio, /tts status і
агентського інструмента tts. Див. Text-to-speech
для прикладів провайдерів і пріоритетності.
id: стабільний id агента (обов’язково).default: коли задано кілька, перший перемагає (логуються попередження). Якщо жоден не задано, типовим є перший запис списку.model: рядкова форма задає суворий primary для окремого агента без резервної моделі; об’єктна форма{ primary }також сувора, якщо ви не додастеfallbacks. Використовуйте{ primary, fallbacks: [...] }, щоб увімкнути fallback для цього агента, або{ primary, fallbacks: [] }, щоб явно задати сувору поведінку. Cron-завдання, які перевизначають лишеprimary, усе ще успадковують типові fallbacks, якщо ви не встановитеfallbacks: [].params: потокові параметри для окремого агента, об’єднані поверх вибраного запису моделі вagents.defaults.models. Використовуйте це для специфічних для агента перевизначень, як-отcacheRetention,temperatureабоmaxTokens, без дублювання всього каталогу моделей.tts: необов’язкові перевизначення text-to-speech для окремого агента. Блок глибоко об’єднується поверхmessages.tts, тому тримайте спільні облікові дані провайдера й політику fallback уmessages.tts, а тут задавайте лише значення, специфічні для persona, як-от провайдер, голос, модель, стиль або автоматичний режим.skills: необов’язковий allowlist Skills для окремого агента. Якщо пропущено, агент успадковуєagents.defaults.skills, коли це задано; явний список замінює defaults замість об’єднання, а[]означає відсутність Skills.thinkingDefault: необов’язковий типовий рівень thinking для окремого агента (off | minimal | low | medium | high | xhigh | adaptive | max). Перевизначаєagents.defaults.thinkingDefaultдля цього агента, коли не задано перевизначення для повідомлення або сесії. Вибраний профіль провайдера/моделі контролює, які значення допустимі; для Google Geminiadaptiveзберігає динамічний thinking, яким володіє провайдер (thinkingLevelпропущено на Gemini 3/3.1,thinkingBudget: -1на Gemini 2.5).reasoningDefault: необов’язкова типова видимість reasoning для окремого агента (on | off | stream). Перевизначаєagents.defaults.reasoningDefaultдля цього агента, коли не задано перевизначення reasoning для повідомлення або сесії.fastModeDefault: необов’язкове типове значення для fast mode для окремого агента ("auto" | true | false). Застосовується, коли не задано перевизначення fast-mode для повідомлення або сесії.models: необов’язкові перевизначення каталогу моделей/ runtime для окремого агента, індексовані повними idprovider/model. Використовуйтеmodels["provider/model"].agentRuntimeдля runtime-винятків окремого агента.runtime: необов’язковий descriptor runtime для окремого агента. Використовуйтеtype: "acp"з типовими значеннямиruntime.acp(agent,backend,mode,cwd), коли агент за замовчуванням має використовувати сесії ACP harness.identity.avatar: шлях відносно робочого простору, URLhttp(s)або URIdata:.- Локальні файли зображень
identity.avatar, відносні до робочого простору, обмежені 2 MB. URLhttp(s)і URIdata:не перевіряються локальним лімітом розміру файлу. identityвиводить типові значення:ackReactionзemoji,mentionPatternsзname/emoji.subagents.allowAgents: allowlist налаштованих id агентів для явних цілейsessions_spawn.agentId(["*"]= будь-яка налаштована ціль; за замовчуванням: лише той самий агент). Додайте id запитувача, коли самонацілені викликиagentIdмають бути дозволені. Застарілі записи, конфігурацію агентів для яких було видалено, відхиляютьсяsessions_spawnі пропускаються вagents_list; запустітьopenclaw doctor --fix, щоб прибрати їх, або додайте мінімальний записagents.list[], якщо ця ціль має лишатися доступною для spawn, успадковуючи defaults.- Запобіжник успадкування пісочниці: якщо сесія запитувача ізольована,
sessions_spawnвідхиляє цілі, які запускалися б без пісочниці. subagents.requireAgentId: коли true, блокує викликиsessions_spawn, які пропускаютьagentId(примушує явний вибір профілю; за замовчуванням: false).
Маршрутизація кількох агентів
Запускайте кілька ізольованих агентів в одному Gateway. Див. Multi-Agent.Поля збігу прив’язки
type(необов’язково):routeдля звичайної маршрутизації (відсутній type за замовчуванням означає route),acpдля прив’язок постійних розмов ACP.match.channel(обов’язково)match.accountId(необов’язково;*= будь-який обліковий запис; пропущено = типовий обліковий запис)match.peer(необов’язково;{ kind: direct|group|channel, id })match.guildId/match.teamId(необов’язково; специфічно для каналу)acp(необов’язково; лише дляtype: "acp"):{ mode, label, cwd, backend }
match.peermatch.guildIdmatch.teamIdmatch.accountId(точний, без peer/guild/team)match.accountId: "*"(на рівні всього каналу)- Типовий агент
bindings.
Для записів type: "acp" OpenClaw розв’язує за точною ідентичністю розмови (match.channel + account + match.peer.id) і не використовує наведений вище рівневий порядок route binding.
Профілі доступу для окремих агентів
Full access (no sandbox)
Full access (no sandbox)
Read-only tools + workspace
Read-only tools + workspace
No filesystem access (messaging only)
No filesystem access (messaging only)
Сесія
Session field details
Session field details
scope: базова стратегія групування сесій для контекстів групового чату.per-sender(за замовчуванням): кожен відправник отримує ізольовану сесію в межах контексту каналу.global: усі учасники в контексті каналу спільно використовують одну сесію (використовуйте лише тоді, коли потрібен спільний контекст).
dmScope: як групуються приватні повідомлення.main: усі приватні повідомлення спільно використовують основну сесію.per-peer: ізолювати за ідентифікатором відправника між каналами.per-channel-peer: ізолювати за каналом + відправником (рекомендовано для скриньок вхідних повідомлень із кількома користувачами).per-account-channel-peer: ізолювати за обліковим записом + каналом + відправником (рекомендовано для кількох облікових записів).
identityLinks: зіставляє канонічні ідентифікатори з одноранговими учасниками з префіксом провайдера для спільного використання сесій між каналами. Команди Dock, як-от/dock_discord, використовують ту саму мапу, щоб перемкнути маршрут відповіді активної сесії на іншого пов’язаного однорангового учасника каналу; див. стикування каналів.reset: основна політика скидання.dailyскидає оatHourза місцевим часом;idleскидає післяidleMinutes. Якщо налаштовано обидва варіанти, спрацьовує той, що настає першим. Свіжість щоденного скидання використовуєsessionStartedAtрядка сесії; свіжість скидання за простоєм використовуєlastInteractionAt. Фонові записи або записи системних подій, як-от Heartbeat, пробудження Cron, сповіщення exec і облік Gateway, можуть оновлюватиupdatedAt, але вони не підтримують свіжість сесій daily/idle.resetByType: перевизначення за типом (direct,group,thread). Застарілийdmприймається як псевдонім дляdirect.mainKey: застаріле поле. Runtime завжди використовує"main"для основного кошика прямого чату.agentToAgent.maxPingPongTurns: максимальна кількість ходів із відповідями між агентами під час обмінів агент-агент (ціле число, діапазон:0-20, за замовчуванням:5).0вимикає ланцюжок ping-pong.sendPolicy: зіставлення заchannel,chatType(direct|group|channel, із застарілим псевдонімомdm),keyPrefixабоrawKeyPrefix. Перша заборона перемагає.maintenance: елементи керування очищенням і збереженням сховища сесій.mode:enforceзастосовує очищення й використовується за замовчуванням;warnлише видає попередження.pruneAfter: вікова межа для застарілих записів (за замовчуванням30d).maxEntries: максимальна кількість записів уsessions.json(за замовчуванням500). Runtime записує пакетне очищення з невеликим буфером верхньої межі для лімітів виробничого розміру;openclaw sessions cleanup --enforceзастосовує ліміт негайно.- Короткоживучі сесії перевірки model-run Gateway використовують фіксоване збереження
24h, але очищення обмежене тиском: воно видаляє застарілі суворі рядки перевірки model-run лише тоді, коли досягнуто тиску обслуговування або ліміту записів сесій. Придатні лише суворі явні ключі перевірки, що відповідаютьagent:*:explicit:model-run-<uuid>; звичайні сесії direct, group, thread, Cron, hook, Heartbeat, ACP і субагентів не успадковують це 24-годинне збереження. Коли запускається очищення model-run, воно виконується перед ширшим очищенням застарілих записівpruneAfterі лімітомmaxEntries. rotateBytes: застаріло й ігнорується;openclaw doctor --fixвидаляє його зі старіших конфігурацій.resetArchiveRetention: збереження для архівів транскриптів*.reset.<timestamp>. За замовчуванням дорівнюєpruneAfter; установітьfalse, щоб вимкнути.maxDiskBytes: необов’язковий дисковий бюджет каталогу сесій. У режиміwarnвін журналює попередження; у режиміenforceспочатку видаляє найстаріші артефакти/сесії.highWaterBytes: необов’язкова ціль після очищення бюджету. За замовчуванням дорівнює80%відmaxDiskBytes.
threadBindings: глобальні значення за замовчуванням для функцій сесій, прив’язаних до тредів.enabled: головний перемикач за замовчуванням (провайдери можуть перевизначати; Discord використовуєchannels.discord.threadBindings.enabled)idleHours: автоматичне скасування фокуса за замовчуванням після неактивності в годинах (0вимикає; провайдери можуть перевизначати)maxAgeHours: жорсткий максимальний вік за замовчуванням у годинах (0вимикає; провайдери можуть перевизначати)spawnSessions: типова брама для створення робочих сесій, прив’язаних до тредів, ізsessions_spawnі породжень тредів ACP. За замовчуванням дорівнюєtrue, коли прив’язки тредів увімкнені; провайдери/облікові записи можуть перевизначати.defaultSpawnContext: типовий нативний контекст субагента для породжень, прив’язаних до тредів ("fork"або"isolated"). За замовчуванням"fork".
Повідомлення
Префікс відповіді
Перевизначення за каналом/обліковим записом:channels.<channel>.responsePrefix, channels.<channel>.accounts.<id>.responsePrefix.
Вирішення (найконкретніше перемагає): обліковий запис → канал → глобальне. "" вимикає й зупиняє каскад. "auto" виводить [{identity.name}].
Змінні шаблону:
| Змінна | Опис | Приклад |
|---|---|---|
{model} | Коротка назва моделі | claude-opus-4-6 |
{modelFull} | Повний ідентифікатор моделі | anthropic/claude-opus-4-6 |
{provider} | Назва провайдера | anthropic |
{thinkingLevel} | Поточний рівень мислення | high, low, off |
{identity.name} | Назва ідентичності агента | (те саме, що "auto") |
{think} є псевдонімом для {thinkingLevel}.
Реакція підтвердження
- За замовчуванням використовує
identity.emojiактивного агента, інакше"👀". Установіть"", щоб вимкнути. - Перевизначення за каналом:
channels.<channel>.ackReaction,channels.<channel>.accounts.<id>.ackReaction. - Порядок вирішення: обліковий запис → канал →
messages.ackReaction→ резервне значення ідентичності. - Область:
group-mentions(за замовчуванням),group-all,direct,all. removeAckAfterReply: видаляє підтвердження після відповіді в каналах із підтримкою реакцій, як-от Slack, Discord, Signal, Telegram, WhatsApp та iMessage.messages.statusReactions.enabled: вмикає реакції стану життєвого циклу в Slack, Discord, Signal, Telegram і WhatsApp. У Slack і Discord не встановлене значення зберігає реакції стану ввімкненими, коли активні реакції підтвердження. У Signal, Telegram і WhatsApp явно встановітьtrue, щоб увімкнути реакції стану життєвого циклу.messages.statusReactions.emojis: перевизначає ключі емодзі життєвого циклу:queued,thinking,compacting,tool,coding,web,deploy,build,concierge,done,error,stallSoftіstallHard. Telegram дозволяє лише фіксований набір реакцій, тому непідтримувані налаштовані емодзі повертаються до найближчого підтримуваного варіанта стану для цього чату.
Затримка об’єднання вхідних повідомлень
Об’єднує швидкі текстові повідомлення від того самого відправника в один хід агента. Медіа/вкладення скидають чергу негайно. Керівні команди обходять затримку об’єднання.TTS (перетворення тексту на мовлення)
autoкерує стандартним режимом автоматичного TTS:off,always,inboundабоtagged./tts on|offможе перевизначати локальні налаштування, а/tts statusпоказує ефективний стан.summaryModelперевизначаєagents.defaults.model.primaryдля автоматичного підсумовування.modelOverridesувімкнено за замовчуванням;modelOverrides.allowProviderза замовчуванням має значенняfalse(увімкнення за згодою).- API-ключі резервно беруться з
ELEVENLABS_API_KEY/XI_API_KEYіOPENAI_API_KEY. - Вбудовані постачальники мовлення належать Plugin. Якщо задано
plugins.allow, включіть кожен Plugin постачальника TTS, який хочете використовувати, наприкладmicrosoftдля Edge TTS. Застарілий ідентифікатор постачальникаedgeприймається як псевдонім дляmicrosoft. providers.openai.baseUrlперевизначає кінцеву точку OpenAI TTS. Порядок визначення: конфігурація, потімOPENAI_TTS_BASE_URL, потімhttps://api.openai.com/v1.- Коли
providers.openai.baseUrlвказує на кінцеву точку не OpenAI, OpenClaw розглядає її як OpenAI-сумісний сервер TTS і послаблює перевірку моделі/голосу.
Розмова
Значення за замовчуванням для режиму Talk (macOS/iOS/Android).talk.providerмає відповідати ключу вtalk.providers, коли налаштовано кілька постачальників Talk.- Застарілі плоскі ключі Talk (
talk.voiceId,talk.voiceAliases,talk.modelId,talk.outputFormat,talk.apiKey) існують лише для сумісності. Запустітьopenclaw doctor --fix, щоб переписати збережену конфігурацію вtalk.providers.<provider>. - Ідентифікатори голосів резервно беруться з
ELEVENLABS_VOICE_IDабоSAG_VOICE_ID. providers.*.apiKeyприймає відкриті текстові рядки або об’єкти SecretRef.- Резервне використання
ELEVENLABS_API_KEYзастосовується лише коли не налаштовано API-ключ Talk. providers.*.voiceAliasesдає змогу директивам Talk використовувати зручні імена.providers.mlx.modelIdвибирає репозиторій Hugging Face, який використовує локальний помічник MLX для macOS. Якщо пропущено, macOS використовуєmlx-community/Soprano-80M-bf16.- Відтворення MLX у macOS виконується через вбудований помічник
openclaw-mlx-tts, якщо він наявний, або виконуваний файл уPATH;OPENCLAW_MLX_TTS_BINперевизначає шлях до помічника для розробки. consultThinkingLevelкерує рівнем мислення для повного запуску агента OpenClaw за викликами Control UI Talk realtimeopenclaw_agent_consult. Не задавайте, щоб зберегти звичайну поведінку сесії/моделі.consultFastModeзадає одноразове перевизначення швидкого режиму для консультацій Control UI Talk realtime без зміни звичайного налаштування швидкого режиму сесії.speechLocaleзадає ідентифікатор локалі BCP 47, який використовує розпізнавання мовлення Talk в iOS/macOS. Не задавайте, щоб використовувати стандартне значення пристрою.silenceTimeoutMsкерує тим, як довго режим Talk чекає після мовчання користувача, перш ніж надіслати транскрипт. Якщо не задано, зберігається стандартне вікно паузи платформи (700 ms on macOS and Android, 900 ms on iOS).realtime.instructionsдодає системні інструкції для постачальника до вбудованого realtime-запиту OpenClaw, тому стиль голосу можна налаштувати без втрати стандартних вказівокopenclaw_agent_consult.realtime.consultRoutingкерує резервним ретранслюванням Gateway, коли realtime-постачальник створює фінальний транскрипт користувача безopenclaw_agent_consult:provider-directзберігає прямі відповіді постачальника, тоді якforce-agent-consultмаршрутизує фіналізований запит через OpenClaw.
Пов’язане
- Довідник конфігурації — усі інші ключі конфігурації
- Конфігурація — поширені завдання та швидке налаштування
- Приклади конфігурації