Technical reference
रिच आउटपुट प्रोटोकॉल
सहायक आउटपुट डिलीवरी/रेंडर निर्देशों का एक छोटा सेट ले जा सकता है:
- अटैचमेंट डिलीवरी के लिए संरचित
mediaUrl/mediaUrlsफ़ील्ड - ऑडियो प्रस्तुति संकेतों के लिए
[[audio_as_voice]] - उत्तर मेटाडेटा के लिए
[[reply_to_current]]/[[reply_to:<id>]] - Control UI रिच रेंडरिंग के लिए
[embed ...]
रिमोट मीडिया अटैचमेंट सार्वजनिक https: URL होने चाहिए। सादा http:,
लूपबैक, लिंक-लोकल, निजी, और आंतरिक होस्टनामों को अटैचमेंट निर्देशों के रूप में
अनदेखा किया जाता है; सर्वर-साइड मीडिया फ़ेचर फिर भी अपने नेटवर्क गार्ड लागू करते हैं।
स्थानीय मीडिया अटैचमेंट निरपेक्ष पाथ, वर्कस्पेस-सापेक्ष पाथ, या
होम-सापेक्ष ~/ पाथ का उपयोग कर सकते हैं। डिलीवरी से पहले वे अब भी एजेंट
फ़ाइल-रीड नीति और मीडिया प्रकार जांचों से गुजरते हैं।
सादा Markdown इमेज सिंटैक्स डिफ़ॉल्ट रूप से टेक्स्ट ही रहता है। वे चैनल जो जानबूझकर
Markdown इमेज उत्तरों को मीडिया अटैचमेंट में मैप करते हैं, अपने आउटबाउंड
एडाप्टर पर ऑप्ट इन करते हैं; Telegram ऐसा करता है ताकि  अब भी मीडिया उत्तर बन सके।
ये निर्देश अलग-अलग हैं। संरचित मीडिया फ़ील्ड और उत्तर/वॉइस टैग
डिलीवरी मेटाडेटा हैं; [embed ...] केवल वेब वाला रिच रेंडर पाथ है।
जब ब्लॉक स्ट्रीमिंग सक्षम हो, तो मीडिया को संरचित पेलोड फ़ील्ड पर ले जाना चाहिए। यदि वही मीडिया URL किसी स्ट्रीम किए गए ब्लॉक में भेजा जाता है और अंतिम सहायक पेलोड में दोहराया जाता है, तो OpenClaw अटैचमेंट को एक बार डिलीवर करता है और अंतिम पेलोड से डुप्लिकेट हटा देता है।
[embed ...]
[embed ...] Control UI के लिए एजेंट-फेसिंग एकमात्र रिच रेंडर सिंटैक्स है।
सेल्फ-क्लोज़िंग उदाहरण:
[embed ref="cv_123" title="Status" /]नियम:
[view ...]नए आउटपुट के लिए अब मान्य नहीं है।- एम्बेड शॉर्टकोड केवल सहायक संदेश सतह में रेंडर होते हैं।
- केवल URL-समर्थित एम्बेड रेंडर होते हैं।
ref="..."याurl="..."का उपयोग करें। - ब्लॉक-फ़ॉर्म इनलाइन HTML एम्बेड शॉर्टकोड रेंडर नहीं होते।
- वेब UI दिखाई देने वाले टेक्स्ट से शॉर्टकोड हटाता है और एम्बेड को इनलाइन रेंडर करता है।
- संरचित मीडिया कोई एम्बेड उपनाम नहीं है और इसे रिच एम्बेड रेंडरिंग के लिए उपयोग नहीं करना चाहिए।
संग्रहीत रेंडरिंग संरचना
सामान्यीकृत/संग्रहीत सहायक कंटेंट ब्लॉक एक संरचित 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 }}संग्रहीत/रेंडर किए गए रिच ब्लॉक इस canvas संरचना का सीधे उपयोग करते हैं। present_view पहचाना नहीं जाता।