Technical reference
Protokół rozszerzonego wyjścia
Dane wyjściowe asystenta przekazują dyrektywy dostarczania/renderowania za pośrednictwem kilku dedykowanych kanałów:
- Ustrukturyzowane pola
mediaUrl/mediaUrlsdo dostarczania załączników. [[audio_as_voice]]dla wskazówek dotyczących prezentacji dźwięku.[[reply_to_current]]/[[reply_to:<id>]]dla metadanych odpowiedzi.[embed ...]do rozszerzonego renderowania w interfejsie Control UI.
Ustrukturyzowane pola multimediów oraz znaczniki [[...]] stanowią metadane dostarczania. [embed ...] jest osobną, dostępną wyłącznie w interfejsie internetowym ścieżką rozszerzonego renderowania; nie jest aliasem multimediów.
Załączniki multimedialne
Załączniki zdalne muszą być publicznymi adresami URL https:. Adresy http:, local loopback i link-local oraz prywatne i wewnętrzne nazwy hostów są odrzucane jako dyrektywy załączników; mechanizmy pobierania multimediów po stronie serwera stosują dodatkowo własne zabezpieczenia sieciowe.
Załączniki lokalne mogą używać ścieżek bezwzględnych, ścieżek względnych wobec obszaru roboczego lub ścieżek ~/ względnych wobec katalogu domowego. Przed dostarczeniem nadal podlegają zasadom odczytu plików przez agenta oraz kontroli typu multimediów.
Zwykła składnia obrazów Markdown () domyślnie pozostaje tekstem. Kanały, które chcą traktować obrazy Markdown jako odpowiedzi multimedialne, włączają tę funkcję w swoim adapterze wychodzącym; Telegram robi to, dzięki czemu  staje się załącznikiem multimedialnym.
Gdy włączone jest strumieniowanie blokowe, multimedia muszą być przesyłane w ustrukturyzowanych polach ładunku. Jeśli ten sam adres URL multimediów pojawi się w przesyłanym strumieniowo bloku, a następnie ponownie w końcowym ładunku asystenta, OpenClaw dostarczy go raz i usunie duplikat z końcowego ładunku.
[embed ...]
[embed ...] jest jedyną składnią rozszerzonego renderowania dostępną dla agenta w interfejsie Control UI. Przykład samozamykający:
[embed ref="cv_123" title="Status" /]Zasady:
[view ...]nie jest już prawidłową składnią dla nowych danych wyjściowych.- Skrócone znaczniki osadzania są renderowane wyłącznie w obszarze wiadomości asystenta.
- Renderowane są wyłącznie osadzenia oparte na adresach URL; użyj
ref="..."luburl="...". - Blokowe skrócone znaczniki osadzania w formacie HTML nie są renderowane.
- Interfejs internetowy usuwa skrócony znacznik z widocznego tekstu i renderuje osadzenie w tekście.
Przechowywana postać renderowania
Znormalizowany/przechowywany blok treści asystenta jest ustrukturyzowanym elementem canvas:
{ "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 nie jest rozpoznawane; przechowywane/renderowane bloki rozszerzone zawsze używają tej postaci canvas.