---
read_when:
    - Зміна відображення виводу асистента в інтерфейсі керування
    - Налагодження `[embed ...]`, `MEDIA:`, директив відповіді або аудіопрезентації
summary: Протокол шорткодів розширеного виводу для вбудованих елементів, медіа, аудіопідказок і відповідей
title: Протокол розширеного виводу
x-i18n:
    generated_at: "2026-05-02T21:28:25Z"
    model: gpt-5.5
    provider: openai
    source_hash: 8e0c365029c26d198090e1f181703e3979394afb0dfa1742f9c088885650de8b
    source_path: reference/rich-output-protocol.md
    workflow: 16
---

Вивід асистента може містити невеликий набір директив доставки/рендерингу:

- `MEDIA:` для доставки вкладень
- `[[audio_as_voice]]` для підказок щодо подання аудіо
- `[[reply_to_current]]` / `[[reply_to:<id>]]` для метаданих відповіді
- `[embed ...]` для розширеного рендерингу Control UI

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

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

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

Ці директиви окремі. `MEDIA:` і теги відповіді/голосу лишаються метаданими доставки; `[embed ...]` є веб-орієнтованим шляхом розширеного рендерингу.
Медіа з довірених результатів інструментів використовує той самий парсер `MEDIA:` / `[[audio_as_voice]]` перед доставкою, тому текстовий вивід інструментів усе ще може позначити аудіовкладення як голосову нотатку.

Коли ввімкнено потокове передавання блоків, `MEDIA:` лишається метаданими одноразової доставки для
ходу. Якщо ту саму URL-адресу медіа надіслано у потоковому блоці й повторено у фінальному
payload асистента, OpenClaw доставляє вкладення один раз і вилучає дублікат
із фінального payload.

## `[embed ...]`

`[embed ...]` є єдиним агент-орієнтованим синтаксисом розширеного рендерингу для Control UI.

Приклад із самозакриттям:

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

Правила:

- `[view ...]` більше не є допустимим для нового виводу.
- Embed-shortcode рендеряться лише на поверхні повідомлення асистента.
- Рендеряться лише embed, підкріплені URL. Використовуйте `ref="..."` або `url="..."`.
- Блокові inline HTML embed-shortcode не рендеряться.
- Веб-UI прибирає shortcode з видимого тексту й рендерить embed inline.
- `MEDIA:` не є псевдонімом embed і не має використовуватися для розширеного embed-рендерингу.

## Збережена форма рендерингу

Нормалізований/збережений блок вмісту асистента є структурованим елементом `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
  }
}
```

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

## Пов’язане

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