---
read_when:
    - Змінення відображення відповідей асистента в інтерфейсі керування
    - Налагодження `[embed ...]`, структурованих директив подання медіа, відповідей або аудіо
summary: Протокол форматованого виведення для структурованих медіа, вбудованого вмісту, підказок щодо аудіо та відповідей
title: Протокол розширеного виведення
x-i18n:
    generated_at: "2026-07-12T13:40:29Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    provider: openai
    source_hash: cbfe68f38c871f5f6d2811eb52b18d0143606f30283023ae96db64543eed95a1
    source_path: reference/rich-output-protocol.md
    workflow: 16
---

Вивід асистента передає директиви доставки/відображення через кілька спеціалізованих каналів:

- Структуровані поля `mediaUrl` / `mediaUrls` для доставки вкладень.
- `[[audio_as_voice]]` для підказок щодо подання аудіо.
- `[[reply_to_current]]` / `[[reply_to:<id>]]` для метаданих відповіді.
- `[embed ...]` для розширеного відображення в інтерфейсі керування.

Структуровані поля медіа та теги `[[...]]` є метаданими доставки. `[embed ...]` — це окремий, призначений лише для вебінтерфейсу шлях розширеного відображення, а не псевдонім медіа.

## Медіавкладення

Віддалені вкладення мають бути загальнодоступними URL-адресами з протоколом `https:`. `http:`, local loopback, локальні для каналу зв’язку, приватні та внутрішні імена хостів відхиляються як директиви вкладень; серверні засоби отримання медіа додатково застосовують власні мережеві обмеження.

Для локальних вкладень приймаються абсолютні шляхи, шляхи відносно робочого простору або шляхи `~/` відносно домашнього каталогу. Перед доставкою вони все одно проходять перевірки політики читання файлів агентом і типу медіа.

<Warning>
Не виводьте текстові команди для вкладень з інструментів, плагінів, потокових блоків, виводу браузера або дій із повідомленнями. Натомість використовуйте структуровані поля медіа:

```json
{ "message": "Here is your image.", "mediaUrl": "/workspace/image.png" }
```

Застарілий текст остаточної відповіді все ще може нормалізуватися для сумісності, але це не загальний протокол плагінів або інструментів.
</Warning>

Звичайний синтаксис зображень Markdown (`![alt](url)`) типово залишається текстом. Канали, які мають обробляти зображення Markdown як відповіді з медіа, явно вмикають це у своєму адаптері вихідних повідомлень; Telegram робить це, тому `![alt](url)` перетворюється на медіавкладення.

Коли ввімкнено потокове передавання блоків, медіа мають передаватися у структурованих полях корисного навантаження. Якщо та сама URL-адреса медіа з’являється в потоковому блоці й знову в остаточному корисному навантаженні асистента, OpenClaw доставляє її один раз і вилучає дублікат з остаточного корисного навантаження.

## `[embed ...]`

`[embed ...]` — єдиний доступний агенту синтаксис розширеного відображення для інтерфейсу керування. Приклад самозакривного запису:

```text
[embed ref="cv_123" title="Status" /]
```

Правила:

- `[view ...]` більше не є допустимим для нового виводу.
- Шорткоди вбудовування відображаються лише в області повідомлення асистента.
- Відображаються лише вбудовування на основі URL-адрес; використовуйте `ref="..."` або `url="..."`.
- Блокові шорткоди вбудовування з вбудованим HTML не відображаються.
- Вебінтерфейс вилучає шорткод із видимого тексту та відображає вбудований вміст безпосередньо в тексті.

## Збережена структура відображення

Нормалізований/збережений блок вмісту асистента є структурованим елементом `canvas`:

```json
{
  "type": "canvas",
  "preview": {
    "kind": "canvas",
    "surface": "assistant_message",
    "render": "url",
    "viewId": "cv_123",
    "url": "/__openclaw__/canvas/documents/cv_123/index.html",
    "title": "Status",
    "preferredHeight": 320
  }
}
```

`present_view` не розпізнається; збережені/відображені розширені блоки завжди використовують цю структуру `canvas`.

## Пов’язані матеріали

- [Адаптери RPC](/uk/reference/rpc)
- [Typebox](/uk/concepts/typebox)
