23 KiB
23 KiB
| read_when | summary | title | x-i18n | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Синтаксис директив для /think, /fast, /verbose, /trace і видимості міркувань | Рівні мислення |
|
Що це робить
- Вбудована директива в будь-якому вхідному тілі:
/t <level>,/think:<level>або/thinking <level>. - Рівні (псевдоніми):
off | minimal | low | medium | high | xhigh | adaptive | max- minimal → “think”
- low → “think hard”
- medium → “think harder”
- high → “ultrathink” (максимальний бюджет)
- xhigh → “ultrathink+” (моделі GPT-5.2+ і Codex, а також Anthropic Claude Opus 4.7 effort)
- adaptive → адаптивне мислення, кероване провайдером (підтримується для Claude 4.6 в Anthropic/Bedrock, Anthropic Claude Opus 4.7 і Google Gemini dynamic thinking)
- max → максимальне міркування провайдера (Anthropic Claude Opus 4.7; Ollama зіставляє це зі своїм найвищим нативним рівнем
think) x-high,x_high,extra-high,extra highіextra_highзіставляються зxhigh.highestзіставляється зhigh.
- Нотатки щодо провайдерів:
- Меню та вибір мислення керуються профілем провайдера. Provider plugins оголошують точний набір рівнів для вибраної моделі, зокрема мітки на кшталт бінарного
on. adaptive,xhighіmaxрекламуються лише для профілів провайдера/моделі, які їх підтримують. Типізовані директиви для непідтримуваних рівнів відхиляються з коректними параметрами для цієї моделі.- Наявні збережені непідтримувані рівні перепризначаються за рангом профілю провайдера.
adaptiveповертається доmediumна неадаптивних моделях, аxhighіmaxповертаються до найбільшого підтримуваного не-offрівня для вибраної моделі. - Моделі Anthropic Claude 4.6 за замовчуванням використовують
adaptive, коли явний рівень мислення не задано. - Anthropic Claude Opus 4.7 не використовує адаптивне мислення за замовчуванням. Його типовий API effort лишається під контролем провайдера, якщо ви явно не задасте рівень мислення.
- Anthropic Claude Opus 4.7 зіставляє
/think xhighз адаптивним мисленням плюсoutput_config.effort: "xhigh", тому що/thinkє директивою мислення, аxhighє налаштуванням effort для Opus 4.7. - Anthropic Claude Opus 4.7 також надає
/think max; це зіставляється з тим самим шляхом максимального effort, керованим провайдером. - Моделі DeepSeek V4 надають
/think xhigh|max; обидва зіставляються з DeepSeekreasoning_effort: "max", тоді як нижчі не-offрівні зіставляються зhigh. - Моделі Ollama з підтримкою мислення надають
/think low|medium|high|max;maxзіставляється з нативнимthink: "high", тому що нативний API Ollama приймає рядки effortlow,mediumіhigh. - Моделі OpenAI GPT зіставляють
/thinkчерез підтримку effort у Responses API, специфічну для моделі./think offнадсилаєreasoning.effort: "none"лише тоді, коли цільова модель це підтримує; інакше OpenClaw пропускає вимкнене корисне навантаження міркування замість надсилання непідтримуваного значення. - Користувацькі сумісні з OpenAI записи каталогу можуть увімкнути підтримку
/think xhigh, задавшиmodels.providers.<provider>.models[].compat.supportedReasoningEffortsтак, щоб він містив"xhigh". Це використовує ті самі метадані сумісності, які зіставляють вихідні корисні навантаження OpenAI reasoning effort, тож меню, валідація сеансу, agent CLI іllm-taskузгоджуються з поведінкою транспорту. - Застарілі налаштовані посилання OpenRouter Hunter Alpha пропускають інʼєкцію проксі-міркування, тому що цей вилучений маршрут міг повертати текст фінальної відповіді через поля міркування.
- Google Gemini зіставляє
/think adaptiveз керованим провайдером dynamic thinking Gemini. Запити Gemini 3 пропускають фіксованийthinkingLevel, тоді як запити Gemini 2.5 надсилаютьthinkingBudget: -1; фіксовані рівні й далі зіставляються з найближчим GeminithinkingLevelабо бюджетом для цієї сімʼї моделей. - MiniMax (
minimax/*) на Anthropic-сумісному потоковому шляху за замовчуванням використовуєthinking: { type: "disabled" }, якщо ви явно не задасте мислення в параметрах моделі або параметрах запиту. Це запобігає витоку дельтreasoning_contentіз ненативного потокового формату Anthropic від MiniMax. - Z.AI (
zai/*) підтримує лише бінарне мислення (on/off). Будь-який не-offрівень вважаєтьсяon(зіставляється зlow). - Moonshot (
moonshot/*) зіставляє/think offзthinking: { type: "disabled" }, а будь-який не-offрівень зthinking: { type: "enabled" }. Коли мислення увімкнене, Moonshot приймає лишеtool_choiceauto|none; OpenClaw нормалізує несумісні значення доauto.
- Меню та вибір мислення керуються профілем провайдера. Provider plugins оголошують точний набір рівнів для вибраної моделі, зокрема мітки на кшталт бінарного
Порядок визначення
- Вбудована директива в повідомленні (застосовується лише до цього повідомлення).
- Перевизначення сеансу (задається надсиланням повідомлення лише з директивою).
- Типове значення для агента (
agents.list[].thinkingDefaultу конфігурації). - Глобальне типове значення (
agents.defaults.thinkingDefaultу конфігурації). - Резервний варіант: оголошене провайдером типове значення, якщо доступне; інакше моделі з підтримкою міркування визначаються як
mediumабо найближчий підтримуваний не-offрівень для цієї моделі, а моделі без міркування лишаютьсяoff.
Налаштування типового значення сеансу
- Надішліть повідомлення, яке містить лише директиву (пробіли дозволені), наприклад
/think:mediumабо/t high. - Це закріплюється для поточного сеансу (типово для кожного відправника); очищується через
/think:offабо скидання після простою сеансу. - Надсилається відповідь-підтвердження (
Thinking level set to high./Thinking disabled.). Якщо рівень некоректний (наприклад,/thinking big), команда відхиляється з підказкою, а стан сеансу лишається незмінним. - Надішліть
/think(або/think:) без аргументу, щоб побачити поточний рівень мислення.
Застосування за агентом
- Вбудований Pi: визначений рівень передається в рантайм агента Pi в межах процесу.
- Бекенд Claude CLI: не-
offрівні передаються в Claude Code як--effortпід час використанняclaude-cli; див. CLI-бекенди.
Швидкий режим (/fast)
- Рівні:
on|off. - Повідомлення лише з директивою перемикає перевизначення швидкого режиму сеансу й відповідає
Fast mode enabled./Fast mode disabled.. - Надішліть
/fast(або/fast status) без режиму, щоб побачити поточний ефективний стан швидкого режиму. - OpenClaw визначає швидкий режим у такому порядку:
- Вбудована директива або повідомлення лише з директивою
/fast on|off - Перевизначення сеансу
- Типове значення для агента (
agents.list[].fastModeDefault) - Конфігурація для моделі:
agents.defaults.models["<provider>/<model>"].params.fastMode - Резервний варіант:
off
- Вбудована директива або повідомлення лише з директивою
- Для
openai/*швидкий режим зіставляється з пріоритетною обробкою OpenAI через надсиланняservice_tier=priorityу підтримуваних запитах Responses. - Для
openai-codex/*швидкий режим надсилає той самий прапорецьservice_tier=priorityу Codex Responses. OpenClaw зберігає один спільний перемикач/fastдля обох шляхів автентифікації. - Для прямих публічних запитів
anthropic/*, зокрема OAuth-автентифікованого трафіку, надісланого доapi.anthropic.com, швидкий режим зіставляється з рівнями сервісу Anthropic:/fast onзадаєservice_tier=auto,/fast offзадаєservice_tier=standard_only. - Для
minimax/*на Anthropic-сумісному шляху/fast on(абоparams.fastMode: true) переписуєMiniMax-M2.7наMiniMax-M2.7-highspeed. - Явні параметри моделі Anthropic
serviceTier/service_tierперевизначають типове значення швидкого режиму, коли задано обидва. OpenClaw і далі пропускає інʼєкцію рівня сервісу Anthropic для базових URL проксі, які не є Anthropic. /statusпоказуєFastлише тоді, коли швидкий режим увімкнено.
Директиви докладності (/verbose або /v)
- Рівні:
on(мінімальний) |full|off(типово). - Повідомлення лише з директивою перемикає докладність сеансу й відповідає
Verbose logging enabled./Verbose logging disabled.; некоректні рівні повертають підказку без зміни стану. /verbose offзберігає явне перевизначення сеансу; очистьте його через UI сеансів, вибравшиinherit.- Вбудована директива впливає лише на це повідомлення; інакше застосовуються типові значення сеансу/глобальні типові значення.
- Надішліть
/verbose(або/verbose:) без аргументу, щоб побачити поточний рівень докладності. - Коли докладність увімкнена, агенти, що виводять структуровані результати інструментів (Pi, інші JSON-агенти), надсилають кожен виклик інструмента назад як окреме повідомлення лише з метаданими, з префіксом
<emoji> <tool-name>: <arg>, коли доступно. Ці підсумки інструментів надсилаються одразу після запуску кожного інструмента (окремі бульбашки), а не як потокові дельти. - Підсумки помилок інструментів лишаються видимими у звичайному режимі, але суфікси з необробленими деталями помилок приховані, якщо докладність не
onабоfull. - Коли докладність дорівнює
full, результати інструментів також пересилаються після завершення (окрема бульбашка, обрізана до безпечної довжини). Якщо перемкнути/verbose on|full|off, поки виконання триває, наступні бульбашки інструментів врахують нове налаштування. agents.defaults.toolProgressDetailкерує формою підсумків інструментів/verboseі рядків інструментів у чернетках прогресу. Використовуйте"explain"(типово) для компактних зрозумілих міток на кшталт🛠️ Exec: checking JS syntax; використовуйте"raw", коли також потрібно додавати необроблену команду/деталі для налагодження.agents.list[].toolProgressDetailдля окремого агента перевизначає типове значення.explain:🛠️ Exec: check JS syntax for /tmp/app.jsraw:🛠️ Exec: check JS syntax for /tmp/app.js, node --check /tmp/app.js
Директиви трасування Plugin (/trace)
- Рівні:
on|off(типово). - Повідомлення лише з директивою перемикає вивід трасування Plugin у сеансі й відповідає
Plugin trace enabled./Plugin trace disabled.. - Вбудована директива впливає лише на це повідомлення; інакше застосовуються типові значення сеансу/глобальні типові значення.
- Надішліть
/trace(або/trace:) без аргументу, щоб побачити поточний рівень трасування. /traceвужчий за/verbose: він показує лише рядки трасування/налагодження, що належать Plugin, наприклад підсумки налагодження Active Memory.- Рядки трасування можуть зʼявлятися в
/statusі як подальше діагностичне повідомлення після звичайної відповіді асистента.
Видимість міркування (/reasoning)
- Рівні:
on|off|stream. - Повідомлення лише з директивою перемикає, чи показуються блоки мислення у відповідях.
- Коли увімкнено, міркування надсилається як окреме повідомлення з префіксом
Reasoning:. stream(лише Telegram): транслює міркування в чернеткову бульбашку Telegram, поки генерується відповідь, а потім надсилає фінальну відповідь без міркування.- Псевдонім:
/reason. - Надішліть
/reasoning(або/reasoning:) без аргументу, щоб побачити поточний рівень міркування. - Порядок визначення: вбудована директива, потім перевизначення сеансу, потім типове значення для агента (
agents.list[].reasoningDefault), потім резервний варіант (off).
Некоректні теги міркування локальних моделей обробляються консервативно. Закриті блоки <think>...</think> лишаються прихованими у звичайних відповідях, а незакрите міркування після вже видимого тексту також приховується. Якщо відповідь повністю обгорнута в один незакритий початковий тег і інакше була б доставлена як порожній текст, OpenClaw видаляє некоректний початковий тег і доставляє решту тексту.
Повʼязане
- Документація режиму підвищених прав міститься в Режим підвищених прав.
Heartbeat
- Тіло зонду Heartbeat є налаштованим запитом heartbeat (типово:
Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.). Вбудовані директиви в повідомленні heartbeat застосовуються як зазвичай (але уникайте зміни типових значень сеансу з heartbeat). - Доставка Heartbeat за замовчуванням обмежується лише фінальним корисним навантаженням. Щоб також надсилати окреме повідомлення
Reasoning:(коли доступно), задайтеagents.defaults.heartbeat.includeReasoning: trueабо для окремого агентаagents.list[].heartbeat.includeReasoning: true.
UI вебчату
- Селектор мислення вебчату віддзеркалює збережений рівень сеансу зі сховища/конфігурації вхідного сеансу під час завантаження сторінки.
- Вибір іншого рівня негайно записує перевизначення сеансу через
sessions.patch; він не чекає наступного надсилання й не є одноразовим перевизначеннямthinkingOnce. - Перший параметр завжди
Default (<resolved level>), де визначене типове значення береться з профілю мислення провайдера активної моделі сеансу плюс та сама резервна логіка, яку використовують/statusіsession_status. - Селектор використовує
thinkingLevels, повернені рядком/типовими значеннями сеансу Gateway, аthinkingOptionsзбережено як застарілий список міток. UI браузера не зберігає власний список регулярних виразів провайдерів; plugins володіють наборами рівнів, специфічними для моделей. /think:<level>і далі працює та оновлює той самий збережений рівень сеансу, тож директиви чату й селектор лишаються синхронізованими.
Профілі провайдерів
- Plugin провайдерів можуть надавати
resolveThinkingProfile(ctx), щоб визначати підтримувані моделлю рівні та значення за замовчуванням. - Plugin провайдерів, які проксіюють моделі Claude, мають повторно використовувати
resolveClaudeThinkingProfile(modelId)зopenclaw/plugin-sdk/provider-model-shared, щоб прямі каталоги Anthropic і проксі-каталоги залишалися узгодженими. - Кожен рівень профілю має збережений канонічний
id(off,minimal,low,medium,high,xhigh,adaptiveабоmax) і може містити відображуванийlabel. Бінарні провайдери використовують{ id: "low", label: "on" }. - Tool Plugin, яким потрібно перевіряти явне перевизначення мислення, мають використовувати
api.runtime.agent.resolveThinkingPolicy({ provider, model })разом ізapi.runtime.agent.normalizeThinkingLevel(...); вони не повинні зберігати власні списки рівнів провайдера/моделі. - Tool Plugin із доступом до налаштованих метаданих користувацької моделі можуть передавати
catalogуresolveThinkingPolicy, щоб opt-incompat.supportedReasoningEffortsвідображалися у валідації на боці Plugin. - Опубліковані застарілі хуки (
supportsXHighThinking,isBinaryThinkingіresolveDefaultThinkingLevel) залишаються адаптерами сумісності, але нові користувацькі набори рівнів мають використовуватиresolveThinkingProfile. - Рядки/значення за замовчуванням Gateway надають
thinkingLevels,thinkingOptionsіthinkingDefault, щоб клієнти ACP/чату відображали ті самі ідентифікатори й мітки профілю, які використовує валідація під час виконання.